adb — Android Debug Bridge
Linux x86_64 原生
adb(v37.0.0), 从 Google platform-tools 下载。 二进制位置:~/.claude/skills/elabalice/adb/adbWindows 参考文件 (不可在 Linux 执行):adb.exe,AdbWinApi.dll,AdbWinUsbApi.dll同目录保留。
调用方式
ADB="$HOME/.claude/skills/elabalice/adb/adb"
$ADB devices
$ADB shell <command>
或定义 alias:
alias adb="$HOME/.claude/skills/elabalice/adb/adb"
常用命令速查
设备管理
$ADB devices [-l] # 列出已连接设备
$ADB connect <ip>[:5555] # 通过 TCP/IP 连接设备
$ADB disconnect [<ip>] # 断开 TCP/IP 设备
$ADB -s <serial> ... # 指定目标设备(多设备时必选)
$ADB kill-server # 停止 adb daemon
$ADB start-server # 启动 adb daemon
包管理
$ADB install [-r|-d] <apk> # 安装 APK (-r 覆盖, -d 降级)
$ADB uninstall <package> # 卸载应用
$ADB shell pm list packages # 列出已安装包
$ADB shell pm path <package> # 查看 APK 路径
$ADB shell pm clear <package> # 清除应用数据
Shell & 文件
$ADB shell # 交互式 shell
$ADB shell <cmd> # 执行单条命令
$ADB push <local> <remote> # 推送文件到设备
$ADB pull <remote> <local> # 从设备拉取文件
$ADB shell ls /sdcard/ # 浏览设备文件
日志
$ADB logcat # 实时日志
$ADB logcat -s <tag> # 按 tag 过滤
$ADB logcat -c # 清空日志缓冲
$ADB logcat -d > log.txt # dump 当前日志到文件
调试 & 截图
$ADB shell screencap /sdcard/sc.png && $ADB pull /sdcard/sc.png
$ADB shell input keyevent 26 # 电源键(唤醒/锁屏)
$ADB shell input text "hello" # 输入文本
$ADB shell dumpsys <service> # 系统服务信息
$ADB reboot [bootloader|recovery] # 重启设备
端口转发
$ADB forward tcp:<local> tcp:<remote> # 正向端口转发
$ADB reverse tcp:<remote> tcp:<local> # 反向端口转发
$ADB forward --list # 列出转发规则
环境要求
- WSL2 Linux x86_64: 直接运行, daemon 自动启动
- USB 设备: WSL2 需
usbipd桥接 Windows USB 设备 (或通过 TCP/IP 无线连接) - 无线调试: Android 11+ 支持无线配对 (
adb pair+adb connect)
与 Windows 版的关系
同目录下的 adb.exe + AdbWinApi.dll + AdbWinUsbApi.dll 是 Windows x86_64 版本,由用户 (ElabAlice) 提供作为参考。它们在 WSL Linux 不可执行,保留作为 Windows 侧的 fallback 或参考。
维护笔记
- 来源: Google Android SDK Platform-Tools,
https://dl.google.com/android/repository/platform-tools-latest-linux.zip - 更新: 重新下载 zip 覆盖
adb二进制即可 - 版本检查:
$ADB --version