文件已上传:https://www.pan38.com/share.php?code=Y5rPB 提取码:8888
声明:仅供学习参考使用
技术原理AutoJS是一款基于JavaScript的Android自动化工具,通过无障碍服务(AccessibilityService)实现自动化操作。本脚本主要利用以下技术点:
屏幕坐标计算与滑动操作图像识别(用于广告识别)随机化操作(模拟人类行为)多平台适配脚本实现以下是完整的AutoJS脚本代码,包含主逻辑、广告识别和平台适配功能:
代码语言:txt复制
// 短视频自动刷看脚本
// 支持抖音、快手、小红书等平台
// 2025.06.11更新
// 基础配置
const config = {
runTime: 60 * 60 * 1000, // 运行时长(毫秒)
swipeDelay: [5000, 15000], // 滑动间隔(毫秒)
skipAds: true, // 是否跳过广告
debug: false // 调试模式
};
// 平台识别
function detectPlatform() {
const currentApp = currentPackage();
if (currentApp.includes("douyin")) return "douyin";
if (currentApp.includes("kuaishou")) return "kuaishou";
if (currentApp.includes("xiaohongshu")) return "xiaohongshu";
return "unknown";
}
// 广告识别
function isAd() {
// 通过文字识别广告
if (textContains("广告").exists() ||
textContains("Sponsored").exists() ||
textContains("推广").exists()) {
return true;
}
// 通过特定按钮识别
if (idContains("ad_").exists() ||
className("android.widget.ImageView").descContains("广告").exists()) {
return true;
}
return false;
}
// 随机滑动
function randomSwipe() {
const width = device.width;
const height = device.height;
const startY = height * 0.8;
const endY = height * 0.2;
const startX = width * 0.5 + random(-100, 100);
swipe(startX, startY, startX, endY, random(300, 500));
}
// 主逻辑
function main() {
// 启动无障碍服务
auto.waitFor();
const startTime = new Date().getTime();
let videoCount = 0;
let adSkipped = 0;
while (new Date().getTime() - startTime < config.runTime) {
const platform = detectPlatform();
log("当前平台: " + platform);
// 广告处理
if (config.skipAds && isAd()) {
log("检测到广告,跳过...");
back();
adSkipped++;
sleep(2000);
continue;
}
// 随机观看时长
const delay = random(config.swipeDelay[0], config.swipeDelay[1]);
sleep(delay);
// 滑动到下一个视频
randomSwipe();
videoCount++;
log(`已观看 ${videoCount} 个视频,跳过 ${adSkipped} 个广告`);
}
toast("脚本运行结束");
}
// 启动脚本
main();
auto_check_accessibility.js【无障碍识别自动开通】
代码语言:txt复制
// 检测无障碍服务是否开启
function checkAccessibility() {
if (!auto.service) {
alert("请先开启无障碍服务");
// 跳转到无障碍设置页面
app.startActivity({
action: "android.settings.ACCESSIBILITY_SETTINGS"
});
return false;
}
return true;
}
// 检查特定服务的无障碍权限
function checkSpecificService(serviceName) {
try {
const enabledServices = auto.service.getEnabledAccessibilityServiceList(
android.accessibilityservice.AccessibilityServiceInfo.FEEDBACK_ALL_MASK,
android.accessibilityservice.AccessibilityServiceInfo.FLAG_INCLUDE_NOT_IMPORTANT_SERVICES
);
for (let i = 0; i < enabledServices.size(); i++) {
const service = enabledServices.get(i);
if (service.getId().includes(serviceName)) {
return true;
}
}
// 未开启则跳转设置
alert("请为" + serviceName + "开启无障碍权限");
app.startActivity({
action: "android.settings.ACCESSIBILITY_SETTINGS"
});
return false;
} catch (e) {
log(e);
return false;
}
}
// 使用示例
function main() {
if (checkAccessibility()) {
toast("无障碍服务已开启");
// 检查特定服务
if (checkSpecificService("com.auto.js")) {
toast("AutoJS服务已开启");
// 继续执行主逻辑...
}
}
}
main();