安卓自动化脚本开发JavaScript

安卓自动化脚本开发教程:从零到上线的完整流程

安卓自动化脚本开发全流程指南——从选择工具、安装环境、连接设备,到编写第一个脚本并部署到生产。使用 JavaScript 实现免ROOT安卓自动化。

约 6 分钟

先搞清楚一件事:这和写 App 完全不是一回事

很多人听到“写脚本”就心里发憷,觉得又要配置 JDK、调 Gradle、装 SDK……停。

安卓自动化脚本开发不需要这些。你写的是一个 js 文件,通过 ADB 传到手机上跑,或者利用无障碍服务直接操控屏幕。没有 APK 要打包,没有商店要上架,也没有用户要对接。 就是你自己给自己写的干活工具。

优势很直白:改一行代码就能看效果,同一份脚本可以扔给任意一台安卓手机去执行。只要会基础的变量、循环、if else,就能开始写。


你需要准备什么

硬件方面很简单:一台安卓手机(调试的时候至少得有一台真机)、一根 USB 线、你的电脑。如果你只管一台手机,一套就够了;打算批量管控的话建议同型号统一,兼容性省事很多。

软件我推荐直接用 EasyClick 全家桶,省去了各种环境配置的功夫:

  • IDE 基于 IntelliJ IDEA 做的,装了就能用。Windows、Mac、Linux 都有
  • 内置了大量现成的示例工程,拿来改改参数就跑
  • 手机端装一个轻量 APK 就行,不用 ROOT

备选方案也有一些:按键精灵门槛更低但功能有限,Auto.js 适合技术折腾党,UiAutomator2 更偏专业测试方向但配置麻烦不少。对于大多数人来说,EasyClick 是省心路线。


动手:十分钟跑通第一个脚本

1. 安装 + 新建项目

下载安装 EasyClick IDE,打开后创建一个新项目,平台选安卓。

2. 连手机

打开手机设置 → 关于手机 → 版本号那里连点七次 → 返回上级进入开发者选项 → 打开 USB 调试。然后插入数据线,IDE 里点连接,手机上弹出的授权提示确认一下就好。

3. 导入示例

IDE 自带了一个「自动点击签到」的示例,通常在「示例工程 → 安卓」目录下。打开之后你会看到 main.js,这就是你的第一个脚本。

长这样:

var appPackageName = "com.example.app"; // 改成你要操作的 App 包名

app.launch(appPackageName);
sleep(3000);

if (clickByText("签到")) {
    toast("签到成功!");
} else {
    toast("没找到签到按钮");
}

sleep(2000);
if (clickByText("确定") || clickByText("关闭")) {
    // 关掉弹窗
}

toast("搞定");

没什么花哨的东西。三步:打开 App → 找“签到”两个字 → 点它。

4. 点运行

IDE 里的运行按钮一点,脚本就会跑到手机上执行。这时候看着手机自己打开 App、跳转到签到页面、点完按钮回来——成就感来得很快。


实用技巧:别踩坑

别用固定坐标

这是我见过新手最容易犯的错误。你以为按钮永远在 (500, 800) 那个位置?App 随便更新一版就全乱了。

改成按文字或图片来找目标:

// ✅ 好做法
clickByText("继续");           // 找"继续"这俩字在哪然后点
clickByDesc("下一步按钮");      // 按 accessibility description 找

// ❌ 坏做法
click(500, 800);               // App 一改布局就瞎了

别死等固定时间

// ❌ 傻等五秒,快的时候浪费慢的时候不够
sleep(5000);

// ✅ 最多等十秒,找到了就不等了
waitForElementByText("确认", 10000);

学会截图识图

界面上有些东西读不到控件文本怎么办?截张图让 OCR 认:

var pos = findImage("confirm-button.png");
if (pos) {
    click(pos.x, pos.y);
}

加上异常处理

脚本中间断了没人知道为什么是最烦的事。套一层基本的 try-catch:

try {
    launchApp("com.example.app");
    sleep(3000);
    tapTarget();
} catch(e) {
    print("出错了: " + e.message);
    showToast("任务失败,请检查网络");
}

碰到问题怎么排查

连不上手机 → 先看 adb devices 有没有识别到你的设备,驱动装了吗,USB 调试开了吗

找不到元素 → 一般是 App 改版了,换个策略比如图片匹配或者 OCR

脚本中途停了 → 大概率被省电策略杀了后台,去电池设置里把你这个 App 设为无限制

点击没反应 → 前面有弹窗挡住了,加一段弹窗处理的逻辑

卡顿明显 → 把 sleep 的时间缩短一点,或者用异步非阻塞的方式


跑通了怎么长期用

刚开始手动点运行没问题,后面可以按场景升级:

定时任务 — 用系统 cron 或者 Windows 计划任务,每天早上八点自动触发脚本

云控调度 — 十几台以上的话需要一个云端面板统一管理,一键下发,实时看每台手机的状态

事件触发 — 结合 webhook,收到通知再跑,比如发货前自动巡检库存

企业级百台以上规模的话,用 iEasyClick 的云控系统配合可视化运维面板最合适。


延伸阅读

EasyClick 官方文档 — API 参考手册 第一个工程入门教程 — 从零创建项目 无障碍服务原理详解 — 了解一下底层是怎么工作的

============================

iEasyClick 官网 ieasyclick.net · 专注于安卓/苹果/鸿蒙全平台手机自动化

============================

想要真实跑起来?

本文介绍的方案均可基于 EasyClick 能力在 iEasyClick 落地。官网提供完整文档、开发工具与自动化产品,免费体验。

访问 iEasyClick 官网 →