ClawSkills logoClawSkills

ADB Connection

通过 ADB 控制 Android 设备,支持 UI 布局分析 和视觉反馈。当您需要与 Android 应用程

介绍

# Android Automation

使用 ADB、uiautomator 和 screencap 控制并自动化 Android 设备。

## 连接设备

### USB 连接 1. 在设备上启用 **“开发者选项”** 和 **“USB 调试”**。 2. 通过 USB 连接,并使用 `adb devices` 进行验证。

### 无线连接 (Android 11+) 1. 在开发者选项中启用 **“无线调试”**。 2. **配对**:在“使用配对码配对设备”弹窗中找到 IP、端口和配对码。 `adb pair <ip>:<pairing_port> <pairing_code>` 3. **连接**:使用主“无线调试”界面上显示的 IP 和端口。 `adb connect <ip>:<connection_port>` 4. 使用 `adb devices` 进行验证。

## 常用工作流程

### 启动应用 使用 monkey 工具通过包名启动应用: `adb shell monkey -p <package_name> -c android.intent.category.LAUNCHER 1`

### 分析 UI 转储并拉取 UI 层级结构以查找坐标: `adb shell uiautomator dump /sdcard/view.xml && adb pull /sdcard/view.xml ./view.xml`

然后通过 grep 搜索文本或资源 ID 来查找 `bounds="[x1,y1][x2,y2]"`。

### 与元素交互 - **点击**:`adb shell input tap <x> <y>` - **文本**:`adb shell input text "<text>"`(注意:在某些环境中使用 `%\s` 表示空格,或小心处理引号) - **按键事件**:`adb shell input keyevent <keycode>`(主屏:3,返回:4,电源:26,搜索:84,回车:66) - **滑动**:`adb shell input swipe <x1> <y1> <x2> <y2> <duration_ms>`

### 视觉验证 截屏以验证状态: `adb shell screencap -p /sdcard/screen.png && adb pull /sdcard/screen.png ./screen.png`

## 提示 - **搜索**:使用 `input keyevent 84` 在许多应用中触发搜索。 - **等待**:在命令之间使用 `sleep <seconds>` 以允许 UI 更新。 - **坐标**:计算 `[x1,y1][x2,y2]` 的中心点以进行可靠点击。

更多产品