AutoJs超神级代码分享大更新

简介: AutoJs超神级代码分享大更新

源代码下载链接:百度网盘 请输入提取码  提取码:d2zb

奋斗了120多个日夜终于算有点小成果,到今天所有的实战内容就都完事了。这个是我最后一次和大家分享代码。薅羊毛本身不违法就这个事情本身也不算在道德阴暗面,不过大家切莫指望这个有所…大家娱乐学习都成。千万别拿这个代码做一些不适合的事情。

个人认为最值得大家拥有的就是薅羊毛专业版和抖音短视频养号。自媒体大道当行的时代这2个app还是能做点小事情的,接下来我会潜心研究基于Python的自媒体小助手希望大家也能关注和支持我。

首先强调一下,下载过的可以再一次下载密码是一样的。

AutoJs7由于UI在非Root 下调试报错,暂时就抖音和快手的代码其他的没写。

项目结构做了个调整,其中Professional里面包含目前最火热的代码:

Autojs4区分了一下版本增加了V2版本:其中最主要的是抖音养号。

同时也增加了一些视频的代码:

薅羊毛代码99%都是我原创,100多天的努力老铁给点支持,小弟谢过了。 项目结构大家可以先看一下。源代码包含:薅羊毛个人版和10多个高收益App集合。有图有真相,下面的2个图已经说明一切了。

列举一下包含的代码:

UI版本

  1. 薅羊毛专业版
  2. 薅羊毛个人版
  3. 薅羊毛UI版
  4. 抖音短视频养号
  5. 抖音三合一小助手
  6. 抖音小助手
  7. 彩蛋视频小助手
  8. 火火视频小助手
  9. 火山小助手
  10. 今日头条辅助
  11. 快逗小助手
  12. 快手辅助
  13. 闪电盒子极速版辅助
  14. 小吃货助手
  15. 小说阅读辅助
  16. 音浪短视频辅助
  17. 中青看点小助手
  18. 长豆
  19. 刷宝短视频
  20. 魔视(没做完不搞了)
  • 小视频类
  1. 抖音极速版
  2. 快手极速版
  3. 火山极速版
  4. 火火视频极速版
  5. 彩蛋视频
  6. 栗子视频
  7. 有颜短视频
  8. 音浪短视频
  9. 闪电盒子极速版
  10. 鲤刷刷
  11. 魔视
  12. 红包视频
  13. 天天视频
  14. 追看视频
  15. 爱走路(爱视频模块)
  16. 快音
  17. 淘看点
  18. 网赚红包短视频
  19. 刷宝短视频
  20. 刷爆短视频
  21. 快刷
  22. 淘金号
  23. 变身记短视频
  24. 多多视频
  25. 高手短视频
  26. 辣手小视频
  27. 趣宠短视频
  28. 趣多多
  29. 趣看看
  30. 趣头条
  31. 闪鸭短视频
  32. 天天短视频
  33. 微视
  34. 小吃货短视频
  35. 音浪短视频
  36. 有颜短视频
  37. 中青看点
  • 走路类
  1. 爱走路
  2. 多多步
  3. 猫扑运动
  4. 步多多
  5. 惠运动(封号)
  6. 欢乐走
  7. 走路赚钱
  • 小说类
  1. 七猫免费小说
  2. 番茄小说
  3. 疯读小说
  4. 免费淘小说
  5. 米读小说
  6. 喜马拉雅
  7. 喜马拉雅极速版
  • 新闻类
  1. 今日头条极速版
  2. 百度极速版
  3. 看点快报
  4. 趣头条
  5. 惠头条(看视频)
  • 综合类
  1. 京东(领京东豆)
  2. 闪电盒子极速版
  3. 淘最热点
  4. 玩赚星球

50个小视频源码;

7个走路签到领金币源码;

8个故事类源码;

9个综合类源码。

抖音极速版专辑6个源码(自动刷、看同城、领宝箱、清理缓存、自动答复和自动提现)

快手极速版专辑4个源码(自动刷、清理缓存、自动答复和自动签到)

火山极速版辑4个源码(自动刷、清理缓存、自动答复和自动签到)

今日头条专辑4个源码(读新闻、清理缓存、读小说和自动搜索)

火火小视频专辑(自动刷、清理缓存、自动评论和自动提现)

彩蛋视频专辑3个源码(自动刷、自动评论和自动提现)没有清理缓存的菜单所以没做

快逗短视频(自动刷、自动评论和自动提现)没有清理缓存的菜单所以没做

有颜短视频(自动刷、自动评论和自动提现)没有清理缓存的菜单所以没做

中青看点(自动刷、清理缓存、自动评论和自动提现)

闪电盒子(自动刷、清理缓存、自动评论和自动提现)

快逗短视频(自动刷、清理缓存、自动评论和自动提现)

小吃货短视频(自动刷、清理缓存、自动评论和自动提现)

音浪短视频(自动刷、清理缓存、自动评论和自动提现)

抖音养号

抖音三合一小助手

专业版项目虽然是单文件我还是区分了一地下公共方法,感觉还是用处也很大的特别是还在这个平台上奋斗的老特们:

//#region 公共方法
/**
 * 屏幕向下滑动并延迟timesInterval+-秒
 */
function slideScreenDown(startX, startY, endX, endY, pressTime, timesInterval) {
    swipe(startX, startY, endX, endY, pressTime);
    let randomMin = timesInterval * 1000;
    let randomMax = (parseInt(timesInterval) + 2) * 1000;
    let delayTime = random(randomMin, randomMax);
    sleep(delayTime);
}
/**
 * 按照指定概率随机上滑
 * @param {*} startX 
 * @param {*} startY 
 * @param {*} endX 
 * @param {*} endY 
 * @param {*} pressTime 
 * @param {*} probability 
 */
function randomUpSildeScreen(startX, startY, endX, endY, pressTime, probability) {
    let randomIndex = random(1, parseInt(probability));
    if (randomIndex == 1) {
        swipe(startX, startY, endX, endY, pressTime);
        delayTime = random(12000, 15000);
        sleep(delayTime);
    }
}
/**
 * 连续下滑对上一个无兴趣
 * 其实得和上滑做个排他,既然无兴趣不要在上滑
 */
function randomDownSildeScreen(startX, startY, endX, endY, pressTime, timesInterval, probability) {
    let randomIndex = random(1, parseInt(probability));
    if (randomIndex == 1) {
        swipe(startX, startY, endX, endY, pressTime);
        sleep(2000);
        swipe(startX, startY, endX, endY, pressTime);
        sleep(timesInterval);
    }
}
/**
 * 屏幕向下滑动并延迟8至12秒
 */
function slideScreenDown(startX, startY, endX, endY, pressTime) {
    swipe(startX, startY, endX, endY, pressTime);
    let delayTime = random(8000, 12000);
    sleep(delayTime);
}
/**
 * 随机点赞
 * @param {点赞ID}} view_id 
 */
function randomHeart(view_id, probability) {
    index = random(1, parseInt(probability));
    if (index == 1) {
        var target = id(view_id).findOnce();
        if (target == null) {
            return;
        } else {
            target.click();
            sleep(1000);
        }
    }
}
/**
 * 随机关注
 * @param {控件ID} follow_view_id 
 * @param {概率} probability 
 */
function randomFollow(follow_view_id, probability) {
    index = random(1, parseInt(probability));
    if (index == 1) {
        var target = id(follow_view_id).findOnce();
        if (target == null) {
            return;
        } else {
            target.click();
            sleep(1000);
        }
    }
}
/**
 * 输出Tosat和Info日志
 * @param {日志消息} messagge 
 */
function toastInfo(message) {
    writeLog(message,"info");
}
/**
 * 输出Tosat和Error日志
 * @param {日志消息} messagge 
 */
function toastError(message) {
    writeLog(message,"error");
}
function toastLog(message) {
    writeLog(message,"log");
}
function toastWarn(message) {
    writeLog(message,"warn");
}
/**
 * 写日志,toast、consle和文件日志
 * @param {日志内容} loginfo 
 * @param {日志等级} level 
 */
function writeLog(loginfo, level) {
    try {
        var logName=getDate()+"_"+"Log.txt";
        var logPath = rootPath + "/日志/";
        let message = getTime() + ":" + loginfo;
        if (!files.isDir(rootPath)) {
            if (files.create(rootPath)) {
                files.create(logPath)
            }
        } else {
            files.create(logPath)
        }
        let logFilePath = logPath + "/"+logName;
        if (!files.exists(logFilePath)) {
            files.create(logFilePath);
            files.write(logFilePath, message + "\r");//写日志
        }
        else {
            files.append(logFilePath, message + "\r");//追加日志
        }
        toast(message);
        if (level == "log") {
            console.log(message);
        } else if (level == "info") {
            console.info(message);
        } else if (level == "warn") {
            console.warn(message);
        } else if (level == "error") {
            console.error(message);
        }
    } catch (error) {
        console.error("系统再写日志的时候出现错误若不影响使用请略过"+error);
    }
}
/**
 * 记录App签到时间
 * @param {App名称} appName 
 */
function getSignTime(appName) {
    let key = appName + storageSign;
    let value = woolStorage.get(key);
    return value;
}
function Color(color) {
    return android.graphics.Color.parseColor(color);
}
function GradientDrawable(orientation, color) {
    var colors = [];
    color.forEach(color => colors.push(Color(color)));
    return new android.graphics.drawable.GradientDrawable(android.graphics.drawable.GradientDrawable.Orientation[orientation], colors);
}
/**
 * 青少年窗口
 */
function adolescentWindows() {
    if (text("我知道了").exists()) {
        text("我知道了").findOnce().click();
    }
    if (text("知道了").exists()) {
        text("知道了").findOnce().click();
    }
}
/**
 * 记录App签到时间
 * @param {App名称} appName 
 */
function recordSignTime(appName) {
    let key = appName + storageSign;
    let value = getDate();
    woolStorage.put(key, value);
}
/**
 * 记录App一次运行的时间
 * @param {appName} appName 
 * @param {本次运行时间} recordTimes 
 */
function appRunTimeRecord(appName, recordTimes) {
    let key = appName + storageSign + getDate();
    var havedRunTimes = woolStorage.get("" + key + "");
    let value = "";
    if (havedRunTimes == null) {
        woolStorage.put(key, parseInt(recordTimes));
    } else {
        value = parseInt(havedRunTimes) + parseInt(recordTimes);
        woolStorage.put(key, value);
    }
}
/**
 * 秒转换成小时
 * @param {*} appCount 
 * @param {*} foreachCount 
 * @param {*} slideTimes 
 * @param {*} timesInterval 
 * @param {*} isExistsLongTimes 
 */
function computerTime(appCount, foreachCount, slideTimes, timesInterval, isExistsLongTimes) {
    let maxSecond = appCount * foreachCount * slideTimes * timesInterval;
    let maxHour = maxSecond / 3600;
    return Math.round(maxHour);
}
/**
 * 获取当前时间格式yyyyMMdd
 */
function getDate() {
    var date = new Date();
    var year = date.getFullYear();
    var month = date.getMonth() + 1;
    if (month < 10) {
        month = "0" + month;
    };
    var day = date.getDate();
    if (day < 10) {
        day = "0" + day;
    };
    return year + "-" + month + "-" + day;
}
/**
 * 
 */
function getTime() {
    var date = new Date();
    var year = date.getFullYear();
    var month = date.getMonth() + 1;
    if (month < 10) {
        month = "0" + month;
    };
    var day = date.getDate();
    if (day < 10) {
        day = "0" + day;
    };
    var hour = date.getHours();
    if (hour < 10) {
        hour = "0" + hour;
    };
    var minute = date.getMinutes();
    if (minute < 10) {
        minute = "0" + minute;
    };
    var seconds= date.getSeconds();     //获取当前秒数(0-59)
    var millisecond =date.getMilliseconds();    //获取当前毫秒数(0-999)
    return year + "-" + month + "-" + day + " " + hour + ":" + minute + ":" + seconds;
};
/**
 * JS构建Map
 */
function Map() {
    var obj = {};
    this.put = function (key, value) {
        obj[key] = value;//把键值绑定到obj对象上
    }
    //size方法,获取Map容器的个数
    this.size = function () {
        var count = 0;
        for (var attr in obj) {
            count++;
        }
        return count;
    }
    //get方法,根据key获取value的值
    this.get = function (key) {
        if (obj[key] || obj[key] === 0 || obj[key] === false) {
            return obj[key]
        } else {
            return null;
        }
    }
    //remove方法,删除方法
    this.remove = function (key) {
        if (obj[key] || obj[key] === 0 || obj[key] === false) {
            delete obj[key]
        }
    }
    //each方法,遍历方法
    this.eachMap = function (callBack) {
        for (var attr in obj) {
            callBack(attr, obj[attr])
        }
    }
}
/**
 * map排序(核心是冒泡有点笨)
 */
function mapSort(mapTask) {
    var arr = [];
    var result = [];
    mapTask.eachMap(function (key, value) {
        arr.push(parseInt(value));
        result.push(key);
    });
    var len = arr.length;
    for (var i = 0; i < len - 1; i++) {
        for (var j = 0; j < len - 1 - i; j++) {
            // 相邻元素两两对比,元素交换,大的元素交换到后面
            if (arr[j] > arr[j + 1]) {
                var temp = arr[j];
                arr[j] = arr[j + 1];
                arr[j + 1] = temp;
                //value交换key也得换
                var keyTemp = result[j + 1];
                result[j + 1] = result[j];
                result[j] = keyTemp;
            }
        }
    }
    return result;//返回数组  
}
/**
 *点击一下屏幕
 */
function clickScreen() {
    var x = device.width - device.width * 0.2;
    var y = device.height - device.height * 0.2;
    toastLog("点击屏幕" + x + ":" + y);
    let clickResult = click(x, y);
    toastLog(clickResult);
}
//#endregion

个人认为最值得大家拥有的就是薅羊毛专业版和抖音短视频养号。自媒体达到当行的时代这2个app还是能做点小事情的,接下来我会潜心研究基于Python的自媒体小助手希望大家也能关注和支持我。

100 多个源码一次让您成为 AutoJs 高手,高手成大神。同时让您真真正正的薅羊毛挣外快。

学习知识费力气,

收集整理更不易。

知识付费甚欢喜,

为咱码农谋福利。

源代码下载链接:百度网盘 请输入提取码  提取码:d2zb

首先强调一下,下载过的可以再一次下载密码是一样的。

相关实践学习
【涂鸦即艺术】基于云应用开发平台CAP部署AI实时生图绘板
【涂鸦即艺术】基于云应用开发平台CAP部署AI实时生图绘板
目录
相关文章
Auto.js 各版本之间的区别
Auto.js 各版本之间的区别
1283 0
|
Android开发
Autox.js 脚本开发环境搭建,从案例到打包apk(详细流程)
Autox.js 脚本开发环境搭建,从案例到打包apk(详细流程)
5161 0
|
JavaScript 数据安全/隐私保护 Android开发
AutoJs4.1.0实战教程---源码大放送
AutoJs4.1.0实战教程---源码大放送
375 0
|
Android开发
autojs之保活
autojs打包的app经常在后台被杀,请做到以下几点来保活: autojs版本号
2922 0
autojs之保活
|
10月前
|
数据安全/隐私保护 Android开发
抖音快手自动刷金币脚本,小红书QQ微博,自动刷视频看广告插件【auojs】
该脚本实现了多平台自动切换、随机滑动间隔、广告识别处理等功能模块,通过OCR+图像识别
|
10月前
|
数据安全/隐私保护
全自动刷视频脚本, 抖音自动脚本快手小红书,抖音快手自动刷金币脚本【autojs】
这个脚本展示了如何使用AutoJS进行基本的自动化操作,包括应用启动、屏幕滑动和随机点击等
|
9月前
|
Android开发 Python
自动养手机权重脚本,抖音看广告刷金币脚本插件, 抖音自动养号脚本app
采用uiautomator2实现Android设备控制,比纯ADB命令更稳定 随机化操作参数包括:观看时长
|
8月前
|
Web App开发 开发框架 .NET
使用 Playwright MCP 实现小红书全自动发布的完整流程
告别小红书自动化中的登录难题!本文手把手教你使用Playwright MCP,通过复用已登录浏览器会话,实现图文发布全程无人值守。无需应对验证码,避免登录态失效,真正实现稳定、高效的自动化操作,助你轻松提升运营效率。
|
10月前
抖音评论插件,全自动评论脚本留言,点赞关注私信autojs
脚本提供了完整的抖音自动化操作功能,包括随机滑动视频、点赞、关注、评论和私信。代码中包
|
10月前
|
数据安全/隐私保护 Android开发
自动刷视频辅助器, 刷视频自动滑屏器,快手自动刷金币软件【autojs】
该脚本通过Auto.js实现以下核心功能:自动完成每日签到

热门文章

最新文章