大家好,我是公众号:狗哥文化
最近有不少网友说,之前的QQ可能想认识的人引流程序用不了,不支持最新版本的qq,问我有没有时间更新一下,刚好昨天夜晚有点时间就顺手更新了一下,最后把整个开发过程给大家一起分享一下吧
再编写这款程序之前我们先来展示一下添加效果图:
比起前几次更新,这次更新可以说是有史以来我耗时最多的一次了.
改写了ui框架之前用到的是html 这次改用xml加载的速度手机上可能看不出来什么,如果在模拟器或者云手机上来看,加载的速度有明显的不同.另外也程序改写了核心代码,之前写的各种判读条件太多,导致运行的速度太慢,还容易出错,这次不会了,并且支持QQ添加好友的多重界面.
function main() {thread.execAsync(() => {热更_检测心跳()})//如果自动化服务正常if (!autoServiceStart(3)) {logd("自动化服务启动失败,无法执行脚本")exit();return;}logd("开始执行脚本...")初始化运行环境()while (true) {keepNode()let node = text("添加").clz("android.widget.Button").getOneNodeInfo(1000)if (!has(text("可能想认识的人")) && has(text("QQ号/QID/手机号/群"))) {logi("[系统]:已全部添加完成!");//加完了QQ可能想认识的人数据break;} else if (node) {let nodes = node.parent().parent().child(1)let 昵称 = nodes.child(0).child(0)// logd(JSON.stringify(nodes))// logd(JSON.stringify(昵称.text))if (昵称 && accessNumber(昵称.text + "")) {logi("[系统]:" + 昵称.text + "无需重复添加!");//过滤添加过的人while (true) {keepNode()sleep(1000)if (has(clz("android.view.View").desc("不再推荐"))) {loge("[系统]:不再推荐此人");//过滤添加过的人click(clz("android.view.View").desc("不再推荐"))break} else {dragToPoint(text(昵称.text).clz("android.widget.TextView"), 12, 191, 1000);sleep(1000)}}} else if (昵称) {logd("[系统状态]:正常");findClickEx(node)sleep(1000);验证请求()时间 = random(readConfigString("a1"), readConfigString("a2"))休息时间(时间)}} else if (findNode(text("我知道了"), true)) {logd("[系统]:好友添加请求已发送,需对方确认。");} else if (has(text("取消")) && has(text("加好友"))) {logd("[系统]:添加出现了点儿小问题");logi("[系统]:纠正中-->" + click(text("取消")))} else if (has(text("确定").clz("android.widget.TextView").desc("确定"))) {logd("[系统]:对方进行了隐私设置,无法添加对方为好友");logi("[系统]:取消该用户的添加-->" + click(text("确定")))}sleep(1000);}
}function 初始化运行环境() {if (!autoServiceStart(2)) {logw("[系统]自动化服务启动失败 请手动打开对应服务");exit();} else {setFloatDisplayLineNumber(false);//不显示日志行数clearLog(-1);//清除日志全部内容logi("------------------------");logi("[系统]自动化环境开启成功");logi("[系统]守护自动化环境服务:" + daemonEnv(true));logi("[系统]历史日志清理成功");logi("[系统]日志浮窗开启结果:" + showLogWindow());//展日志浮窗logi("[系统]启停浮窗开启结果:" + showCtrlWindow());//展示启停浮窗logi("[系统]设备版本:Android" + device.getOSVersion());logi("------------------------");sleep("500");}
}function autoServiceStart(time) {for (var i = 0; i < time; i++) {if (isServiceOk()) {return true;}var started = startEnv();logd("第" + (i + 1) + "次启动服务结果: " + started);if (isServiceOk()) {return true;}}return isServiceOk();
}
如果你想获得这款程序的话可以添加下面的二维码
=正文完=