用AutoX.js做移动端自动化

您所在的位置:网站首页 如何做手机脚本软件下载 用AutoX.js做移动端自动化

用AutoX.js做移动端自动化

2024-07-16 07:04| 来源: 网络整理| 查看: 265

Auto.js是一个使用JavaScript编写Android自动化脚本的工具。

由于原作者不再维护 Auto.js 项目,目前常见的两个分支:AutoX 和 Auto.js Pro 。

其中

AutoX是开源的 https://github.com/kkevsekk1/AutoX 文档: http://doc.autoxjs.com/#/ Auto.js Pro 商业化版本,闭源的 https://pro.autojs.org/ 文档: https://pro.autojs.org/docs/ 中提到 Auto.js Pro移除了自动化测试、图片处理、消息通知等模块,如果你需要实现的是自动化、工作流工具,则不适合Auto.js Pro

我们这里要演示的是自动化脚本的功能,所以使用的是 AutoX。

Auto.js特点

Auto.js特点如下:

无需Root权限的自动化工具

许多Android自动化工具需要设备获得Root权限才能使用,但Auto.js无需Root权限,即使在没有Root的设备上也可以运行大部分功能。

这个能力主要是由无障碍服务实现的。

悬浮窗录制和运行 通过使用悬浮窗,可以方便的做不干扰情况下的录制和运行。

http://doc.autoxjs.com/#/?id=综述

具体可以看本文最后部分的截图。

基于JavaScript开发

AutoX.js 使用 JavaScript 作为脚本语言,目前使用 Rhino 1.7.13 作为脚本引擎,支持 ES5 与部分 ES6 特性。

安装及 Hello World

安装分为两个部分:手机端安装APK ,电脑端安装开发调试插件。

手机端APK

下载地址: https://github.com/kkevsekk1/AutoX/releases

APK版本说明:

universal: 通用版(包含以下2种CPU架构) armeabi-v7a: 32位ARM设备 arm64-v8a: 64位ARM设备(主流旗舰机)

为了后面使用方便,安装好后,在左侧边栏(从左侧往中间滑)打开无障碍服务,同时需要将autojs开启自启动、后台弹出界面等等特权。

VSCode插件安装

VSCode插件名:Auto.js-Autox.js-VSCodeExt, 可以通过 https://marketplace.visualstudio.com/items?itemName=aaroncheng.auto-js-vsce-fixed 这个地址直接访问该插件。

VSCode连接手机操作

需要与电脑同一局域网,或者手机连接电脑无线。

ipconfig/ifconfig 查看自己本机ip 在手机侧配置服务器地址 启用VSCode插件的服务

按 Ctrl+Shift+P 或点击"查看"->"命令面板"可调出命令面板,输入 Auto.js 可以看到几个命令,如下图: 我们这里执行命令开启服务。

VSCode的右下角会有相关提示。 上图这个提示除了服务运行起来了,还有MuMu设备连接上来的提示。

手机端连接

手机打开Auto.js侧边选项卡--->连接电脑---->输入ip地址。

下面是连接本机的MuMu模拟器的截图:

打开Auto.js侧边选项卡 打开连接电脑选项

输入服务器地址,点确认完成连接

无线连接、ADB连接看插件的文档:https://marketplace.visualstudio.com/items?itemName=aaroncheng.auto-js-vsce-fixed

Hello World 在VsCode新建一个js 文件 输入如下代码: toast('Hello World'); 按F5(或者代码页的三角形按钮)执行

雷电模拟器下执行效果如下图

我这里碰到Mac下MuMu模拟器(版本1.9.58)有问题,报错误,Mac平台各方模拟器的支持还是比较弱的。

16:38:44.938/E: Function importClass must be called with a class; had "[JavaPackage java.util.concurrent.CompletableFuture]" instead. (#14) Function importClass must be called with a class; had "[JavaPackage java.util.concurrent.CompletableFuture]" instead. at :14:0 at /android_asset/modules/npm/stream.js:5:0 at /android_asset/modules/npm/event-stream.js:954:0 at __nccwpck_require__ (/android_asset/modules/npm/event-stream.js:988:0) at /android_asset/modules/npm/event-stream.js:119:0 at __nccwpck_require__ (/android_asset/modules/npm/event-stream.js:988:0) at /android_asset/modules/npm/event-stream.js:9:0 at __nccwpck_require__ (/android_asset/modules/npm/event-stream.js:988:0) at /android_asset/modules/npm/event-stream.js:1008:0 at /android_asset/modules/npm/event-stream.js:1:0 at /android_asset/modules/npm/process.js:4:0 at :59:0 at :5:0

https://github.com/kkevsekk1/AutoX/issues/635

示例: 刷抖音

打开了指定的视频App,并在一个无限循环中模拟了向下滑动的操作来切换视频,并通过等待一段时间模拟观看视频的过程。

https://zhuanlan.zhihu.com/p/631027548

// 导入 AutoJS 的相关模块 var packageName = "com.ss.android.ugc.aweme"; // 视频App的包名 // 打开视频App launch(packageName); // 等待视频App加载完成 waitForPackage(packageName); // 自动刷视频 autoSwipe(); // 自动刷视频函数 function autoSwipe() { while (true) { // 模拟向下滑动操作 swipe( device.width / 2, device.height * 0.8, device.width / 2, device.height * 0.2, 1000 ); // 等待一段时间,模拟观看视频 sleep(5000); // 可以根据实际情况调整等待时间 } } 常用功能说明 打开模拟器的Root权限

雷电模拟器怎么开启root权限?

进入雷电模拟器,点击右上角按钮。 在弹出的菜单中选择软件设置。 进入软件设置选择其他设置,点击开启即可。

布局分析,查看UI

查看控件信息

生成代码能力

生成找元素代码

总结

在移动端上进行自动化任务,最好的选择是使用AutoX.js。以下是详细的原因解释:

可编程性:AutoX.js允许开发者使用JavaScript编写自动化脚本。JavaScript是一种流行的编程语言,许多开发者都对其有所了解。通过编写脚本,用户可以轻松地控制手机或模拟器上的各种操作。

跨平台兼容:AutoX.js可以在不同的Android设备和模拟器上运行。这意味着开发者可以编写一套脚本,在多个平台上进行测试和部署,节省了大量时间。

功能丰富:AutoX.js提供了丰富的API和接口,可以控制手机的各种硬件和软件功能。从简单的点击和滑动操作到复杂的网络通信和文件操作,几乎可以实现所有自动化需求。

开源和免费:AutoX.js是一个开源项目,开发者可以自由访问其源代码。这意味着有能力的开发者甚至可以根据自己的需要对其进行定制。而且,它是完全免费的,这使得个人开发者和小公司能够轻松开始使用它,无需担心额外的成本。

AutoX.js以其强大的功能、跨平台兼容、开源免费、简单易上手等特点,成为了手机和模拟器自动化的首选工具。无论是专业开发者还是业余爱好者,都可以利用AutoX.js轻松实现自动化需求,提高工作效率和灵活性。



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3