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 操作循环

每个重要步骤都可以遵循以下顺序:

  1. 通过 USB 或 Wi-Fi 连接 Android 12+ 设备。
  2. 获取最新截图。
  3. 根据截图识别目标控件。
  4. 发送一次点击、文本输入、滑动、文件操作或 APK 操作。
  5. 再次截图。
  6. 确认结果后再继续。

这样可以发现加载页面、权限弹窗、键盘变化和意外跳转。

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 远程控制就不再是脆弱的宏,而是一个可以调试的自动化流程。