京东极速版赚金币来袭
程序员文章站
2023-12-31 22:41:34
写在前面最近有不少人给我推荐京东极速版,让我帮忙写脚本刷金币,笔者今天抽空研究了下,做了个初稿出来(非UI版本)关注微信公众号“口袋阅打卡小助手”,后台回复"京东极速版",获取脚本文件(脚本文件将在文末开源,大家安心哦)脚本介绍脚本完成的功能比较简单,代码量也较少,不过已经足够帮助大家完成重复的劳动了支持自动完成"看商品"、"看视频"以及"看活动"任务脚本运行过程中,如需退出,按音量上键即可退出运行笔者这里就不赘述导入脚本的过程了,需要脚本源文件的可以复制文末的代码,也可以关...
写在前面
最近有不少人给我推荐京东极速版,让我帮忙写脚本刷金币,笔者今天抽空研究了下,做了个初稿出来(非UI版本)
关注微信公众号“口袋阅打卡小助手”,后台回复"京东极速版",获取脚本文件(脚本文件将在文末开源,大家安心哦)
脚本介绍
脚本完成的功能比较简单,代码量也较少,不过已经足够帮助大家完成重复的劳动了
支持自动完成"看商品"、"看视频"以及"看活动"任务
脚本运行过程中,如需退出,按音量上键即可退出运行
笔者这里就不赘述导入脚本的过程了,需要脚本源文件的可以复制文末的代码,也可以关注公众号回复关键字"京东极速版"获取
注意事项:
1、你需要有Autojs这个APP(安卓系统需要是Android7.0及以上版本),没有APP的可以去公众号回复“autojs”获取安装包
2、你需要懂得开启无障碍模式(脚本运行的时候会提示,不懂的也可以看我公众号或者博客里面的其他文章参考)
3、脚本仅供学习使用
由于笔记也是今天刚刚接触京东极速版APP,还有很多不熟悉的地方(第一次玩,也在研究阶段),脚本制作过程中难免有所bug,大家遇到问题可以多多提出来,笔者看到也会第一时间更新脚本
运行效果
脚本代码
auto.waitFor();
console.show();
console.log('脚本将在5-10秒后开始,将自动打开京东极速版');
console.log('---------------')
console.error('注意:如果脚本无法正常运行,可能是由于屏幕分辨率设置错误导致,请看源码中参数设置部分,按照自己设备调节参数即可')
console.warn('另外:如果需要在中途退出脚本,请按音量上键,即可停止脚本执行')
//初始化参数,注意,笔者在这里测试的时候,设备width和height获取到的值为1,导致后面脚本滑动报错
//所以笔者手动添加了自己手机的分辨率,经过查询,该问题别人也有发现,需要等待Autojs解决
//大家根据自己的情况手动更改下面的参数(1080和1920)即可,不过,如果脚本正常运行,可以不用更改
let width = device.width || 1080;
let height = device.height || 1920;
setScreenMetrics(width, height);
//初始化方法
function init() {
events.observeKey();
events.on("key", function (keyCode, event) {
if (keyCode == keys.volume_up) {
toastLog("音量上键按下,结束脚本");
exit();
}
});
}
//常量定义
let JD_NAME = 'com.jd.jdlite';
//弹框
function myAlert(val) {
alert('温馨提示', val);
}
//打开京东极速版
function openJD(name) {
return launch(name);
}
//看一次商品任务
function doShopTask(shopBtn) {
shopBtn.click();
sleep(2000);
var count = 0;
while (count++ < 17) {
MySwipe();
MySleep(0.5, 2);
}
back();
sleep(3000);
}
//看一次活动任务
function doActiveTask(activeBtn) {
activeBtn.click();
sleep(2000);
var count = 0;
while (count++ < 17) {
MySwipe();
MySleep(0.5, 2);
}
back();
MySleep(2, 4);
}
//看视频任务
function doVideoTask(videoBtn) {
videoBtn.click();
var child = idEndsWith('text_title').findOne();
toastLog('识别文本:' + child.text());
click(child.text(), 0);
for (var i = 0; i < 50; i++) {
var count = 0;
while (count++ < 80) {
MySleep(0.5, 0.6);
}
MySwipe();
toastLog('完成第' + i + '次看视频循环');
if (videoIsEnd()) {
toastLog('识别到今日已完成,结束看视频:');
break;
}
}
}
//判断视频是否结束
function videoIsEnd() {
var isEnd = text('今日已完成').findOne(2000);
if (isEnd) {
return true;
}
return false;
}
//找任务按钮
function findTaskBtn(type) {
var taskBtnGroup = text('去赚钱').untilFind();
var btn;
taskBtnGroup.forEach(function (item) {
if (type == 1 && !item.parent().findByText('逛商品赚金币').empty) {
btn = item;
} else if (type == 2 && !item.parent().findByText('逛活动赚金币').empty) {
btn = item;
} else if (type == 3 && !item.parent().findByText('看视频赚金币').empty) {
btn = item;
}
});
return btn;
}
//找‘我的’
function findMyBtn() {
var myBtn = className("android.view.View").desc("我的").findOne();
return myBtn;
}
//启动函数
function main() {
init();
if (!openJD(JD_NAME)) {
toastLog('未安装京东极速版哦!');
return;
}
//找到‘我的’
var myBtn = findMyBtn();
myBtn.click();
//判断任务是否需要执行
var btn;
var i = 1;
while (btn = findTaskBtn(1)) {
doShopTask(btn);
toastLog('第' + i + '次看商品完成');
if (++i > 100) {
break;
}
}
toastLog('商品任务结束');
i = 1;
while (btn = findTaskBtn(2)) {
doActiveTask(btn);
toastLog('第' + i + '次看活动完成');
if (++i > 30) {
break;
}
}
toastLog('活动任务结束');
if (btn = findTaskBtn(3)) {
toastLog('视频按钮找到了');
doVideoTask(btn);
}
toastLog('视频任务结束');
exit();
}
function random(min, max) {
return Math.round(Math.random() * (max - min)) + min;
}
function MySwipe() {
var sX = random(100, width - 100);
var sY = random(height / 2 + 100, height - 100);
var eY = random(100, height / 2 - 100);
swipe(sX, sY, sX, eY, random(100, 120));
}
function MySleep(Min, Max) {
sleep(random(Min * 1000, Max * 1000));
}
main();
本文地址:https://blog.csdn.net/xchl123/article/details/111881665