深圳幻海软件技术有限公司 欢迎您!

autox.js(autojs替代方案) 开发教程

2023-03-01

用JavaScript编写不需要Root权限的android自动化软件针对网上的多个版本区别做说明autojs是一个开源的自动化程序,之后因为被某些资本警告,导致该工具无法对某些应用进行操作autojspro原作者在autojs上提供了一个付费的工具,拥有更强大的功能,同样无法操作某些软件autox

JavaScript编写不需要Root权限的android自动化软件

针对网上的多个版本区别做说明

  • autojs 是一个开源的自动化程序,之后因为被某些资本警告,导致该工具无法对某些应用进行操作
  • autojs pro 原作者在autojs上提供了一个付费的工具,拥有更强大的功能,同样无法操作某些软件
  • autox.js 网友维护的版本,可操作所有软件,并拥有大量autojs pro的功能

AutoX.js

本文章只讲环境搭建及注意问题,语法和api请参考官网或文末的Demo

下载 autojsx.js 手机端APP

国内快速下载 AutoX.js5.7.9android安装包-Android文档类资源-CSDN下载

最新版 https://github.com/kkevsekk1/AutoX/releases

电脑下载vscode并安装插件 Auto.js-VSCodeExt

shift + ctrl + p 搜素 auto.js ,启动服务

 打开悬浮窗并连接电脑

 手机上随便打开一个app分析它的结构 

 vscode新建一个js 文件编写代码尝试运行

  1. // 购物车按钮的id
  2. const carId = id('com.yaya.zone:id/rl_car_layout');
  3. // 控制台与手机弹窗输出 toastLog autox.js 全局函数,请查看官方文档
  4. //控件是否存在
  5. toastLog('控件是否存在:'+carId.exists())
  6. //搜索到唯一元素并点击
  7. carId.findOnce().click()
  • vscode -> 帮助 -> 切换开发人员工具,方便查看日志
  • 键盘F5启动 

 开发干货

MT 管理器下载

https://download.csdn.net/download/SUNbrightness/85162159

使用如下代码可以直接跳转到APP内的某个页面

  1. //这样启动没有广告,有点android开发经验,贼爽
  2. app.startActivity({
  3. action: "android.intent.action.VIEW",
  4. className: "com.yaya.zone.home.HomeActivity",
  5. packageName: "com.yaya.zone",
  6. });

className 与 packageName查看方法:MT管理器 -> 左上角菜单->Activity记录

使用autox.js 打包成app,打包的软件报毒

这个问题是因为打包后的app用了 autojs 作为包名,需要用MT管理器把apk 的xml中的autojs字符串换成任意其他值就可以了。

 这个多亏了这篇文章:autojs打包的软件报毒 - 知乎

我开发的autojs脚本

叮咚买菜抢菜

autojs: autojs脚本分享