首页 ZZ游戏攻略 正文

auto.js是什么?看完这篇介绍文章你就全明白了!

最近不是老刷到各种自动化的脚本嘛我就琢磨着自己也搞一个。然后就发现*这个东西,据说不用root就能在安卓手机上跑脚本,听着就挺方便的,所以我就动手试试。

下载安装

我一开始是在网上找的 * 的安装包,发现版本还挺多的,有点懵。后来才知道,现在好像有个 * Pro 版本,不过我就是想先体验一下,就随便找个免费版的先用着。

安装过程倒是没啥特别的,就跟装普通app一样,点几下就完事。不过装完之后,我发现它会要很多权限,尤其是那个“无障碍服务”权限,说是要用这个来模拟点击啥的,虽然有点担心,但还是给。

编写脚本

装好之后,我就迫不及待地想写个脚本试试。* 是用 JavaScript 写的,还好我以前稍微学过一点点 JavaScript,勉强能看懂。不过 * 提供一些它自己特有的函数,比如模拟点击、滑动之类的,这些我就得现学现卖。

我一开始是照着网上的例子,写个简单的脚本,功能就是自动打开某个app,然后点几个按钮。代码大概长这样:


// 启动app

launchApp("应用名称");

// 等待一段时间

sleep(2000);

// 点击某个按钮

click("按钮文字");

// 再等待一段时间

sleep(1000);

看着挺简单的?但实际写的时候,还是遇到一些问题。比如说,怎么找到要点击的按钮?

控件定位

这里就要用到 * 的控件分析功能。它可以显示屏幕上各个控件的信息,比如控件的文字、ID、位置等等。有这些信息,我们就可以在脚本里通过这些信息来找到对应的控件,然后进行操作。

比如说,我要点击一个文本内容是“确定”的按钮,就可以这样写:


click("确定");

或者,如果这个按钮没有文字,但是它有一个唯一的 ID,我也可以通过 ID 来找到它:


click("button_id");

实际情况可能更复杂,有时候需要根据控件的位置、层级关系等多个条件来定位。* 也提供一些更高级的函数,比如 find()findOne() 等等,可以用来进行更复杂的控件查找。

运行脚本

写好脚本之后,就可以直接在 * 里运行。我第一次运行的时候,还挺紧张的,生怕出啥问题。还一切顺利,脚本成功地打开app,然后点几下按钮,完成预期的操作。

实践中遇到的坑

实际使用中,还是会遇到各种各样的坑。比如说:

  • 不同手机的兼容性问题: 有些代码在我的手机上跑得好好的,换个手机就不行,可能是因为不同手机的屏幕分辨率、系统版本等不一样导致的。
  • 页面变化导致脚本失效: 如果app的界面发生变化,比如按钮的位置变,或者文字改,那么原来的脚本就可能失效,需要重新修改。
  • 反检测机制: 有些app可能会检测到你在使用自动化脚本,然后进行一些限制,比如弹出验证码、封号之类的。

* 确实是个挺好玩的东西,可以实现一些简单的自动化操作。不过要想真正用好它,还是需要不断地学习和尝试。我也还在摸索中,以后有啥新的发现再来跟大家分享。