rdp-cli
Android AI Agent 控制:USB、Wi-Fi、截图与真实操作
AI Agent 可以规划任务,但如果目标是 Android 手机,只有规划还不够。它必须读取当前屏幕,执行操作,并确认界面发生了什么变化。
对于 Android 12 及以上版本,实用的控制层应该同时支持 USB 和 Wi-Fi,能够处理常见触控动作、文件操作,并把截图返回给 Agent。
AI Agent 控制 Android 需要什么
- 点击屏幕指定位置
- 在当前输入框中输入文字
- 通过滑动完成滚动和手势
- 在操作前后获取截图
- 上传和下载文件
- 按需安装 APK
- 通过 USB 或 Wi-Fi 保持稳定的设备会话
关键是反馈循环。不要让 Agent 根据猜测的坐标连续点击十次,而应该先截图、找到目标、执行一次操作,再次截图并验证结果。
一个简单的操作记录可以是:
{
"action": "tap",
"x": 420,
"y": 780,
"observation": "SCREENSHOT_ID"
}
观察 ID 可以把操作和 Agent 实际看到的屏幕关联起来。
USB 还是 Wi-Fi?
USB 通常适合首次连接:速度快、稳定,而且不要求手机和电脑处于同一网络。Wi-Fi 更适合把手机放在测试支架上、放在另一房间,或用于长时间的测试实验室。
可以用 USB 完成初始配对和故障恢复,设备稳定且处于可信网络后再使用 Wi-Fi。不要把 Android 调试端口直接暴露到公网。
可靠的 Agent 操作循环
每个重要步骤都可以遵循以下顺序:
- 通过 USB 或 Wi-Fi 连接 Android 12+ 设备。
- 获取最新截图。
- 根据截图识别目标控件。
- 发送一次点击、文本输入、滑动、文件操作或 APK 操作。
- 再次截图。
- 确认结果后再继续。
这样可以发现加载页面、权限弹窗、键盘变化和意外跳转。
Android 控制与 ADB 的区别
ADB 是 Android 调试桥,适合安装 APK、复制文件、启动 Activity 或执行 shell 命令等明确操作。
但 ADB 本身不是完整的视觉 Agent 工作流。Agent 仍然需要读取当前屏幕,选择安全的操作,并在输入后验证结果。
可以把 ADB 理解为低级命令通道,把 Android AI Agent 控制理解为围绕设备建立的观察与操作循环。
Android MCP 不等于屏幕控制
Android MCP 工具可以用结构化方式向 AI Agent 暴露设备操作,便于发现和调用工具。但它仍然需要可靠的设备后端。
更完整的方案应该同时提供动作和观察结果:截图、设备状态、输入结果和清晰的错误信息。Android MCP 负责结构化工具访问,设备控制层负责 USB 或 Wi-Fi 会话及经过验证的屏幕交互。
适合哪些场景
这种方式适合测试 Android 应用、在多台设备上重复操作、上传测试文件、安装 APK 构建版本、每次发布后检查移动端界面,以及操作不在 Agent 身边的 Android 手机。
原则很简单:连接、观察、操作一次、验证结果。这样,面向 AI Agent 的 Android 远程控制就不再是脆弱的宏,而是一个可以调试的自动化流程。