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

本文介绍了如何使用JavaScript编写的AutoX.js在Android设备上进行自动化,无需Root权限。内容包括AutoX.js与其他版本的区别、环境搭建步骤、通过VSCode编写和调试JS脚本、控制APP元素以及解决打包后软件报毒的问题。同时提供了示例代码展示如何直接启动APP内的特定页面。

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 文件编写代码尝试运行

// 购物车按钮的id
const carId = id('com.yaya.zone:id/rl_car_layout');

// 控制台与手机弹窗输出 toastLog autox.js 全局函数,请查看官方文档
//控件是否存在
toastLog('控件是否存在:'+carId.exists())

//搜索到唯一元素并点击
carId.findOnce().click()
  • vscode -> 帮助 -> 切换开发人员工具,方便查看日志
  • 键盘F5启动 

 开发干货

MT 管理器下载

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

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

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

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

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

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

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

我开发的autojs脚本

叮咚买菜抢菜

autojs: autojs脚本分享

### AutoX.js 初学者指南:大麦抢票保姆级教程 AutoX.js 是一个基于 JavaScript 的开源自动化工具,主要用于 Android 设备的自动化操作。它通过简单的脚本语言实现设备上的任务自动化,例如点击、滑动、输入文本等操作。以下是一个适合初学者的详细教程,帮助用户快速上手 AutoX.js,并以大麦抢票为例进行实践[^1]。 #### 一、环境搭建 在开始编写脚本之前,需要完成以下准备工作: 1. **下载并安装 AutoX.js** 访问官方项目地址[^1],下载最新版本的 AutoX.js 应用程序,并将其安装到你的 Android 设备上。 2. **启用无障碍服务** 在 Android 系统设置中,找到“无障碍”选项,启用 AutoX.js 的无障碍服务权限。这是实现自动化操作的关键步骤。 3. **授予必要权限** 根据需求,可能需要授予 ROOT 权限或网络访问权限,具体取决于脚本的功能。 #### 二、基础语法学习 AutoX.js 使用 JavaScript 作为脚本语言,因此了解基本的 JavaScript 语法是必要的。以下是几个常用的 API: - **点击操作** ```javascript click(x, y); // 点击屏幕指定坐标 (x, y) ``` - **查找控件** ```javascript id("id_name").findOne().click(); // 根据控件 ID 查找并点击 text("text_content").findOne().click(); // 根据文本内容查找并点击 ``` - **等待操作** ```javascript sleep(1000); // 暂停脚本执行 1000 毫秒(1 秒) ``` #### 三、大麦抢票脚本示例 以下是一个简单的大麦抢票脚本,适用于初学者学习和实践: ```javascript while (true) { // 进入购票页面 if (id("btn_buy").exists()) { id("btn_buy").findOne().click(); console.log("已点击购票按钮"); } // 提交订单 if (id("btn_submit_order").exists()) { id("btn_submit_order").findOne().click(); console.log("已提交订单"); } // 确认支付 if (id("btn_confirm_payment").exists()) { id("btn_confirm_payment").findOne().click(); console.log("已确认支付"); } // 处理异常情况 if (text("抢票失败").exists()) { console.log("抢票失败,继续尝试..."); } // 设置循环间隔 sleep(500); } ``` #### 四、注意事项 1. **脚本调试** 在正式运行脚本前,建议使用 AutoX.js 内置的调试功能,逐步检查每个步骤是否正常工作。 2. **性能优化** 避免过于频繁的操作,可能导致系统卡顿或应用崩溃。可以通过 `sleep()` 方法适当增加延迟。 3. **法律与道德** 自动化脚本的使用需遵守相关法律法规及平台规则,避免因不当使用导致封号或其他后果。 ---
评论 25
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

SUNbrightness

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值