编程开源技术交流,分享技术与知识

网站首页 > 开源技术 正文

关于Autojs无障碍被检测

wxchong 2024-06-17 22:36:57 开源技术 12 ℃ 0 评论

聊聊近况

最近过年嘛,都过的不错,平时偶尔刷刷贴吧,今天刚好刷到了一篇autojs无障碍服务会被淘宝检测的帖子,我有点小惊讶,这可不是啥好事啊,这样点击,滑动等等依靠无障碍完成的操作都会被检测,这可咋整嘞?

还好哇,autojs支持shell命令,也就是说你可以使用adb shell的命令,这毫无疑问,解决了咱不敢开启无障碍的问题。

shell的使用

官方的介绍是这样的。

shell(cmd[,root])

注:放括号代表可选,就是说咱可以写也可以不写在放括号里的这句话。

cmd {string} 要执行的命令

root {Boolean} 是否以root权限运行,默认为false。

一次性执行命令cmd, 并返回命令的执行结果。返回对象的其属性如下:


code {number} 返回码。执行成功时为0,失败时为非0的数字。

result {string} 运行结果(stdout输出结果)

error {string} 运行的错误信息(stderr输出结果)。例如执行需要root权限的命令但没有授予root权限会返回错误信息"Permission denied"。

下面是我对照这adb shell命令写的代码。

// 一个名为js的函数

var js = ()=>{

//返回值

return {

//返回一个名为"点击"的函数

点击:(x,y)=> shell("input tap "+x+" "+y),

滑动:(x,y,xx,yy,d)=> shell("input swipe "+x+" "+y+" "+xx+" "+yy+" "+d),

输入:(str)=> shell("input text "+str),

模拟:(str)=> shell("input keyevent "+str)


}


}

let test = js().点击(150,100);

//code为0就说明adb shell成功执行

if(test.code === 0){


log("成功使用");


}else{


error("使用失败");


}

总结

上面就是shell的大致使用情况,更多的话咱看看官方文档就好啦,咱总不能把官方文档复制下来吧。

这样呢,也不会被检测到开启无障碍,也就不会有问题啦,至于adb shell会不会被检测,这谁知道呢。

总的来说,虽然步骤多了一些,但将shell命令封装在函数里面,调用起来也差不了多少,还是可以接受的吧。

Tags:

本文暂时没有评论,来添加一个吧(●'◡'●)

欢迎 发表评论:

最近发表
标签列表