欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  互联网

京东极速版赚金币来袭

程序员文章站 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

上一篇:

下一篇: