EasyClick脚本开发教程(11)多线程处理某音弹窗

前言

某音打开后会随机跳出十几种弹窗。 每个弹窗的内容都不一样,关闭方式也不一样。 有的需要点击选择按钮,有的按返回键就可以处理,还有的需要点击关闭的叉号。

file

多线程

多线程是高级编程语言中必备的方法。在复杂的逻辑中,能同时处理不同的业务。 学习多线程之前,我们先要了解几个关于线程有关的概念。

进程

进程指正在运行的程序。当一个程序进入内存运行,即变成一个进程,进程是处于运行过程中的程序,并且具有一定独立功能。 file

线程

线程是进程中的一个执行单元,负责当前进程中程序的执行,一个进程中至少有一个线程。一个进程中是可以有多个线程的,这个应用程序也可以称之为多线程程序。

简而言之:一个程序运行后至少有一个进程,一个进程中可以包含多个线程。 file

多线程

什么是多线程呢?即就是一个程序中有多个线程在同时执行。

单线程程序:即,若有多个任务只能依次执行。当上一个任务执行结束后,下一个任务开始执行。如,去网吧充值,网吧只能让人排队,当这个人充值完成后,下一个人才能继续。

多线程程序:即,若有多个任务可以同时执行。如,去网吧上网,网吧能够让多个人同时上网。

测试代码

启动某音后,执行以下代码:

// 异步执行线程
var tid = thread.execAsync(function () {
    logd('启动线程,查找弹窗');
    logd('线程ID:' + tid);

    let btnText = new Array(
        "下次再说",
        "允许",
        "暂不",
        "暂时不要",
        "我知道了",
        "知道了",
    );
    while (true) {
        for (let i = 0; i < btnText.length; i++) {
            logd('检查弹窗...');
            let node = text(btnText[i]).getOneNodeInfo(1000);
            if (node) {
                node.click();
                logd('弹窗已处理');
            }
        }
        sleep(1000);
    }
});

execSync(function() {
    logd('保持程序运行');
    sleep(1000);
},10000);

执行日志:

[2020-11-28 10:49:29.251]【远程设备】开始启动...
[2020-11-28 10:49:29.251]【远程设备】准备运行工程...
[2020-11-28 10:49:29.341]【远程设备】开始执行,请稍等
[2020-11-28 10:49:29.578]【远程设备】执行 main class: com.js.main
[2020-11-28 10:49:29.580]【远程设备】执行class: com.js.main
[2020-11-28 10:49:29.580]【远程设备】开始执行脚本...
[2020-11-28 10:49:30.87]【远程设备】保持程序运行
[2020-11-28 10:49:31.587]【远程设备】保持程序运行
[2020-11-28 10:49:33.90]【远程设备】保持程序运行
[2020-11-28 10:49:34.592]【远程设备】保持程序运行
[2020-11-28 10:49:36.98]【远程设备】保持程序运行
[2020-11-28 10:49:37.175]【远程设备】启动线程,查找弹窗
[2020-11-28 10:49:37.176]【远程设备】检查弹窗...
[2020-11-28 10:49:37.176]【远程设备】线程ID:a90d90a1-f293-4f0d-b2df-7fd34f47bf92
[2020-11-28 10:49:37.601]【远程设备】保持程序运行
[2020-11-28 10:49:39.106]【远程设备】保持程序运行
[2020-11-28 10:49:44.499]【远程设备】
子线程: a90d90a1-f293-4f0d-b2df-7fd34f47bf92结束了
[2020-11-28 10:49:48.306]【远程设备】运行结束

EasyClick免费云控

全动云是淘美科技旗下2021年最新的免费云控脚本管理系统。提供设备分组、设备管理、脚本分组、脚本管理、任务管理、素材管理等强大功能。支持用户上传自定义EasyClick脚本。 全动云大数据智能营销管理系统

相关链接

EasyClick开发文档

EasyClick脚本开发教程(1)IntelliJ IDEA Ultimate的安装方法EasyClick脚本开发教程(2)安装开发工具并创建项目EasyClick脚本开发教程(3)连接设备与屏幕映射

EasyClick实现某音直播间刷屏喊话,循环发送随机话术EasyClick实现某音发送指定语音,发送好友私信,引流脚本必备技术

1. 官方交流QQ群,添加多个不批。建议使用安卓手机或电脑申请。
Auto.js学习交流③群:286635606
Auto.js学习交流②群:712194666(满员)
IOS免越狱自动化测试群:691997586
EasyClick学习交流①群:737066890
2. 盗版,破解有损他人权益和违法作为,请各位会员支持正版。
3. 本站部分资源来源于用户上传和网络搜集,如有侵权请提供版权证明并联系站长删除。
4.如未特别申明,本站的技术性文章均为原创,未经授权,禁止转载/搬运等侵权行为。
5.全站所有付费服务均为虚拟商品,购买后自动发货。售出后概不接受任何理由的退、换。注册即为接受此条款。
6.如果站内内容侵犯了您的权益,请联系站长删除。
飞云脚本 » EasyClick脚本开发教程(11)多线程处理某音弹窗

企业级大数据智能营销管理系统

了解详情