🔒 仅涵盖通过 ADB 控制 真实 Android 设备或模拟器 的方法(USB 或 IP 连接)。
通过
adb shell直接操作设备,无需外部库。
| 工具 / 命令 | 语言 | 能力 | 规模 | 限制 |
|---|---|---|---|---|
adb shell input |
shell/cmd | 模拟点击、滑动、输入文字 | 🟡 | 坐标定位困难 |
adb shell am start |
shell/cmd | 启动 Activity(含 WhatsApp 预填消息) | 🟢 | 无法确认是否送达 |
adb shell sendevent |
shell | 底层 raw 输入注入 | 🔴 | 需 root 且 timing 精确 |
adb shell uiautomator |
shell/Java | 屏幕 dump、按 viewId 导航 | 🟡 | 新版 Android 不稳定 |
monkey / monkeyrunner |
shell/Python | 随机或脚本化输入 | 🔴 | 无法精细控制 |
✅ 适用场景:只需打开聊天并输入消息的简单群发。
⚠️ 不适合处理收件消息或多语言界面。
ADB + Android 无障碍 / UI 基础设施。
| 工具 | 语言 | 能力 | 规模 | 限制 |
|---|---|---|---|---|
| Appium | Python / JS / Java | 基于无障碍的完整 UI 自动化 | 🟢🟢 | 需搭建服务端 |
| uiautomator2 | Python | 快速访问元素树 + ADB | 🟢 | 不同版本稳定性不一 |
| Airtest | Python | 基于截图的视觉检测与操作 | 🟡 | 依赖屏幕模板 |
| AndroidViewClient | Python | 按名称和 ID 操作 UI 元素 | 🟡 | 社区支持少于 Appium |
✅ 适用场景:需要目视监控设备的大规模群发。
⚠️ 需事先获取屏幕或 layout dump。
在手机内运行自动化;ADB 多用于触发与调试。
| 工具 | 类型 | 能力 | 规模 | 限制 |
|---|---|---|---|---|
| Tasker | Android RPA | 按收件/定时等触发场景 | 🟢 | 新手界面较复杂 |
| Macrodroid | Android RPA | 简单触发与动作 | 🟡 | 灵活性较低 |
| Auto.js | JS 引擎 | 用 JavaScript 写完整 UI 机器人 | 🟡 | 需学习脚本 |
| Automate | Android RPA | 可视化流程引擎 | 🟡 | ADB 功能有限 |
✅ 适用场景:灵活的收发包逻辑、自动回复、账号养号。
⚠️ 每台设备需单独配置。
远程操作手机或通过 ADB 镜像屏幕。
| 工具 | 能力 | 规模 | 说明 |
|---|---|---|---|
| Scrcpy | 设备画面投到 PC,鼠标控制 | 🟡 | 仅视觉 |
| STF (DeviceFarm) | 多用户共享 ADB 设备 | 🟢🟢 | 部署复杂 |
| Genymotion Cloud | 云端 Android,支持 ADB + UI | 🟢🟢 | 付费 |
| DevSidecar | ADB + Web 界面 | 🟡 | 便于集成 |
✅ 适用场景:管理设备集群、调试群发脚本。