https://developer.android.com/studio/releases/platform-tools?hl=zh-cn
https://developer.android.com/studio/releases/platform-tools?hl=zh-cn
这是独立文件,配置环境变量使用
ADB (Android Debug Bridge) 实用命令大全
1. 设备连接与基本信息
命令 | 说明 | 备注 / 示例 |
adb devices |
查看已连接的设备列表 |
-l 参数可查看更详细信息 (如设备型号) |
adb get-serialno |
获取设备序列号 |
用于识别设备 |
adb shell getprop ro.product.model |
查看设备型号 |
如 Pixel 4 XL |
adb shell getprop ro.build.version.release |
查看 Android 系统版本 |
如 13 |
adb shell getprop ro.product.cpu.abi |
查看设备 CPU 架构 |
安装应用或 Frida 时非常重要 (e.g., arm64-v8a ) |
adb shell settings get secure android_id |
查看设备唯一ID |
|
adb shell dumpsys iphonesubinfo |
查看设备 IMEI (需权限) |
在部分新版本系统上可能失效 |
adb reboot |
重启手机设备 |
|
adb reboot bootloader |
重启到 Bootloader 模式 (刷机模式) |
|
adb reboot recovery |
重启到 Recovery 模式 |
|
2. 设备状态与日志信息
命令 | 说明 | 备注 / 示例 |
adb shell dumpsys battery |
查看电池信息 |
包括电量、状态、健康状况等 |
adb shell ifconfig 或 adb shell ip addr |
查看手机网络信息 (IP地址等) |
ifconfig 在某些精简系统上可能不可用,推荐使用 ip addr |
adb shell wm size |
查看屏幕物理分辨率 |
输出示例: Physical size: 1440x3040 |
adb shell wm density |
查看屏幕密度 (DPI) |
输出示例: Physical density: 560 |
adb logcat |
实时查看系统日志 (最重要) |
调试应用崩溃的利器 |
adb logcat -c |
清除之前的日志 |
清除后再开始抓取新日志,保持日志干净 |
adb logcat -v time > log.txt |
将日志输出到文件 (带时间戳) |
方便后续分析 |
adb shell ps 或 adb shell ps -A |
查看系统运行进程 |
-A 查看所有进程 |
adb shell top |
实时查看进程资源占用 (类似任务管理器) |
|
adb shell df |
查看系统磁盘使用情况 (更正) |
比 ls 更准确反映磁盘空间 |
3. 应用管理 (APK)
命令 | 说明 | 备注 / 示例 |
adb install path/to/app.apk |
安装一个apk |
|
adb install -r path/to/app.apk |
覆盖安装 (保留数据) |
用于更新应用,极其常用 |
adb install -t path/to/app.apk |
允许安装测试包 (无视 android:testOnly ) |
|
adb uninstall <package_name> |
卸载一个应用 (按包名) |
|
adb uninstall -k <package_name> |
卸载应用但保留数据和缓存 |
|
adb shell pm list packages |
列出所有已安装应用的包名 |
|
adb shell pm list packages -3 |
只列出第三方应用 |
|
adb shell pm list packages -s |
只列出系统应用 |
|
adb shell pm path <package_name> |
查看指定APK的安装路径 |
|
adb shell am force-stop <package_name> |
强制停止一个应用 |
|
4. 文件操作
命令 | 说明 | 备注 / 示例 |
adb push local_file /sdcard/remote_path |
将电脑文件上传到手机 |
|
adb pull /sdcard/remote_file local_path |
将手机文件下载到电脑 |
不指定 local_path 则下载到当前目录 |
adb shell screencap -p /sdcard/screenshot.png |
手机设备截屏并保存到手机 |
|
adb exec-out screencap -p > local.png |
截屏并直接下载到电脑 |
无需两步操作,更高效 |
adb shell screenrecord /sdcard/demo.mp4 |
手机设备录像 (默认最多3分钟) |
按 Ctrl+C 停止录制 |
adb shell ls /path/ |
列出手机目录下的文件 |
需要进入 adb shell 后使用 |
5. 屏幕与输入模拟
命令 | 说明 | 备注 / 示例 |
adb shell input tap <x> <y> |
模拟屏幕点击 |
坐标原点为屏幕左上角 |
adb shell input swipe <x1> <y1> <x2> <y2> |
模拟屏幕滑动 ( swipe ) |
从 (x1,y1) 滑动到 (x2,y2) |
adb shell input swipe <x1> <y1> <x2> <y2> <ms> |
模拟带时间的滑动 |
<ms> 为滑动持续时间(毫秒),常用于模拟长距离滚动 |
adb shell input text "string" |
模拟文本输入 |
无法输入中文和一些特殊字符 |
adb shell input keyevent <event_code> |
模拟键盘事件 |
如 KEYCODE_HOME (3), KEYCODE_BACK (4) |
常用 Keyevent 代码:
-
3
: Home 键
-
4
: Back 键
-
5
: 拨号
-
6
: 挂断
-
24
: 音量+
-
25
: 音量-
-
26
: 电源键
-
66
: 回车键
-
82
: 菜单键
-
223
: 熄屏
-
224
: 亮屏
补充:高级调试命令
命令 | 说明 |
`adb shell dumpsys window | grep -E 'mCurrentFocus |
mFocusedApp'` |
查看当前前台应用的Activity (调试时非常有用) |
adb shell am start -n <package>/<activity> |
启动一个 Activity (e.g., com.android.settings/.Settings ) |
adb shell am start -a android.intent.action.VIEW -d <url> |
通过 Intent 启动一个链接 |
adb shell pm clear <package_name> |
清除应用的所有数据 (相当于重装) |