Android Debug Bridge (ADB) 是 Android 开发和调试中非常强大的命令行工具,它能让你像一位指挥官一样,通过电脑对连接的 Android 设备(手机、平板、模拟器等)下达各种指令。
下面为你整理了最常用和实用的 ADB 命令,方便你查阅和使用。
⚙️ 准备工作与基本操作
在使用 ADB 命令之前,需要先完成一些基础设置和了解最基本的命令。
| 功能分类 | 命令 | 说明 |
|---|---|---|
| 准备工作 | - | 1. 开启开发者选项:在设备的“设置” -> “关于手机”中,连续点击“版本号”7次。 2. 开启USB调试:返回“设置” -> “系统” -> “开发者选项”,找到并开启“USB调试”。 3. 连接设备:用USB线将设备连接到电脑。 |
| 服务管理 | adb start-server |
启动 ADB 服务(通常连接设备时会自动启动)。 |
adb kill-server |
停止 ADB 服务。当 ADB 出现问题(如无法识别设备)时,可以先执行此命令再重启。 | |
| 设备连接 | adb devices |
列出当前连接电脑的所有 Android 设备序列号及状态。这是最常用的命令,用于确认设备是否成功连接。 |
adb connect <设备IP地址>:<端口> |
通过 Wi-Fi 连接到设备(需要先通过USB连接并执行 adb tcpip 5555 开启网络模式)。 |
|
adb disconnect <设备IP地址>:<端口> |
断开 Wi-Fi 连接。 | |
| 多设备操作 | adb -s <设备序列号> <命令> |
当连接了多个设备时,使用此命令指定要对哪台设备执行操作。设备序列号可通过 adb devices 获取。 |
📱 应用管理
这部分命令主要用来安装、卸载和管理设备上的应用程序(App)。
| 命令 | 说明 |
|---|---|
adb install <apk文件路径> |
安装一个安卓应用安装包(APK)文件到设备。 |
adb install -r <apk文件路径> |
覆盖安装应用,同时保留应用的数据和缓存文件。 |
adb uninstall <应用包名> |
卸载应用。 |
adb uninstall -k <应用包名> |
卸载应用但保留其数据和缓存目录。 |
adb shell pm list packages |
列出设备上所有应用的包名。 |
adb shell pm list packages -3 |
仅列出第三方应用的包名。 |
adb shell pm list packages -s |
仅列出系统应用的包名。 |
adb shell pm clear <应用包名> |
清除指定应用的所有数据(相当于在设置里点“清除存储空间”)。 |
adb shell am start -n <应用包名>/<活动类名> |
启动应用的特定界面(Activity)。例如,adb shell am start -n com.android.settings/.Settings 可以直接打开设置。 |
adb shell am force-stop <应用包名> |
强制停止指定应用。 |
📁 文件管理
方便地在电脑和手机之间传输文件。
| 命令 | 说明 |
|---|---|
adb pull <设备内文件路径> <电脑目标路径> |
将文件从设备复制到电脑。如果省略电脑路径,则默认复制到当前目录。 |
adb push <电脑文件路径> <设备目标路径> |
将文件从电脑复制到设备。 |
ℹ️ 设备信息与状态
用于查看设备的硬件、软件和状态信息。
| 命令 | 说明 |
|---|---|
adb shell getprop ro.build.version.release |
查看 Android 系统版本。 |
adb shell getprop ro.product.model |
查看设备型号。 |
adb shell wm size |
查看设备屏幕分辨率。 |
adb shell wm density |
查看设备屏幕密度(dpi)。 |
adb shell dumpsys battery |
查看电池状态信息(如是否在充电、电量百分比等)。 |
adb shell cat /proc/cpuinfo |
查看设备 CPU 信息。 |
adb shell cat /proc/meminfo |
查看设备内存信息。 |
📸 日志与屏幕操作
开发和调试中非常实用的功能。
| 功能分类 | 命令 | 说明 |
|---|---|---|
| 日志查看 | adb logcat |
实时查看设备和应用的日志输出,对分析应用崩溃(Crash)等问题至关重要。 |
adb logcat -c |
清除(清空)旧的日志缓冲区。 | |
| 截屏录屏 | adb shell screencap /sdcard/screenshot.png |
对当前屏幕进行截图,并保存到设备指定路径。 |
adb shell screenrecord /sdcard/screen.mp4 |
录制设备屏幕操作,按 Ctrl+C 停止录制。 |
🕹️ 模拟操作
让设备模拟用户的按键、点击、滑动等操作。
| 命令 | 说明 |
|---|---|
adb shell input keyevent <键值> |
模拟按键事件。例如 adb shell input keyevent 3 模拟按下 Home 键,adb shell input keyevent 4 模拟按下返回键。 |
adb shell input tap <x坐标> <y坐标> |
模拟点击屏幕上的指定坐标点。 |
adb shell input swipe <起点x> <起点y> <终点x> <终点y> [毫秒数] |
模拟滑动操作。可以指定滑动所用的时间(毫秒)。 |
adb shell input text "<输入内容>" |
在当前获得焦点的输入框中输入指定文本(注意用空格转义)。 |
⚡️ 高级与系统操作
针对更深入的调试和系统层面的操作。
| 命令 | 说明 |
|---|---|
adb reboot |
重启设备。 |
adb reboot bootloader |
重启设备到 Bootloader 模式(刷机模式)。 |
adb reboot recovery |
重启设备到 Recovery 模式(恢复模式)。 |
adb root |
以 root 权限重启 adbd 守护进程。需要设备已获取 root 权限,以便执行更高权限的命令。 |
这里整理的是一些最常用的命令,如果你想深入了解某个特定命令(比如 dumpsys 或 pm 的更多用法),随时可以再问我。