目录
- 前置准备
- 什么是 ADB 和 Fastboot?
- 如何安装 ADB 和 Fastboot?
- 如何在电脑上启用 ADB 调试模式?
- 如何在电脑上识别设备?
- ADB (Android Debug Bridge) 命令大全
- 基础命令 (设备连接、状态查询)
- 应用管理 (安装、卸载、强制停止)
- 文件管理 (推送、拉取)
- 日志管理 (查看、过滤日志)
- Shell 命令 (进入设备终端)
- 系统信息 (获取设备详情)
- 高级操作 (屏幕录制、输入、模拟按键)
- 开发者选项 (启用/禁用)
- Fastboot 命令大全
- 基础命令 (设备连接、解锁、重启)
- 分区操作 (解锁、擦除、刷新镜像)
- 镜像操作 (刷入、获取、备份)
- OEM 厂商命令 (解锁、重新锁定)
- 高级/系统命令 (获取变量、设置属性)
- 常见问题与解决方案
adb devices 显示 unauthorized (未授权)
adb command not found (命令未找到)
fastboot oem unlock 失败
- 设备无法进入 Fastboot 模式
- 总结与安全提示
前置准备
什么是 ADB 和 Fastboot?
- ADB (Android Debug Bridge): 一个多功能命令行工具,可以让你与连接的 Android 设备进行通信,它主要用于调试、安装应用、访问 Shell、管理文件等,设备需要开机并 启用“USB调试” 模式。
- Fastboot: 一个更底层的协议和工具,用于在设备 完全关机 并进入 Fastboot 模式 (也称为 Bootloader 模式) 时与设备通信,它主要用于刷写分区、解锁 Bootloader、刷入自定义 Recovery 或系统镜像等操作。
如何安装 ADB 和 Fastboot?
最简单的方法是使用 Google 提供的官方 SDK Platform Tools。
- 访问 Android Developers 官网。
- 下载适用于你操作系统 (Windows, macOS, Linux) 的 SDK Platform Tools。
- 下载后解压到一个固定的文件夹,
D:\platform-tools。
- 重要: 将此文件夹路径添加到系统的环境变量
Path 中,这样你就可以在任何目录下直接使用 adb 和 fastboot 命令。
如何在设备上启用 USB 调试?
- 进入 设置 > 关于手机。
- 连续点击 “版本号”或“内部版本号” 7次,直到提示“你已处于开发者模式”。
- 返回 设置 > 系统 > 开发者选项。
- 找到并开启 “USB 调试” 开关。
- 首次连接时,手机屏幕上会弹出“允许 USB 调试吗?”的提示,请勾选“始终允许此计算机”并点击“允许”。
如何在电脑上识别设备?
连接设备后,打开电脑的命令行工具 (Windows: cmd 或 PowerShell, macOS/Linux: Terminal),输入以下命令:
adb devices
如果一切正常,你会看到类似下面的输出,设备状态为 device:
List of devices attached
XXXXXXXXXXXXXX device
如果状态是 unauthorized,请参考下面的常见问题部分。
ADB 命令大全
基础命令
| 命令 |
解释 |
示例 |
adb devices |
列出所有连接的 ADB 设备。 |
adb devices |
adb -s <serial> <command> |
对指定序列号的设备执行命令。 |
adb -s emulator-5554 shell |
adb get-serialno |
获取当前连接设备的序列号。 |
adb get-serialno |
adb start-server |
启动 ADB 服务器。 |
adb start-server |
adb kill-server |
强制停止 ADB 服务器。 (常用于解决连接问题) |
adb kill-server |
adb version |
显示 ADB 版本号。 |
adb version |
应用管理
| 命令 |
解释 |
示例 |
adb install <path> |
在设备上安装 APK 文件。 |
adb install D:\app.apk |
adb install-multiple <path1> <path2> |
安装一个或多个 APK (Split APKs)。 |
adb install-mutable app-config.apk |
adb uninstall <package> |
卸载应用 (保留数据)。 |
adb uninstall com.example.app |
adb uninstall -k <package> |
卸载应用并清除其数据。 |
adb uninstall -k com.example.app |
adb shell pm list packages |
列出所有已安装的应用包名。 |
adb shell pm list packages |
adb shell pm list packages -f |
列出所有应用及其对应的 APK 文件路径。 |
adb shell pm list packages -f |
adb shell pm clear <package> |
清除应用数据和缓存。 |
adb shell pm clear com.android.chrome |
adb shell am force-stop <package> |
强制停止一个正在运行的应用。 |
adb shell am force-stop com.tencent.mm |
文件管理
| 命令 |
解释 |
示例 |
adb push <local> <remote> |
将电脑上的文件复制到设备上。 |
adb push D:\local.txt /sdcard/Download/ |
adb pull <remote> <local> |
将设备上的文件复制到电脑上。 |
adb pull /sdcard/Download/remote.txt D:\ |
adb shell ls <path> |
列出设备指定目录下的文件。 |
adb shell ls /sdcard/ |
adb shell mkdir <path> |
在设备上创建一个新目录。 |
adb shell mkdir /sdcard/MyFolder |
adb shell rm <path> |
删除设备上的文件或目录。 |
adb shell rm /sdcard/Download/file.txt |
日志管理
| 命令 |
解释 |
示例 |
adb logcat |
实时查看设备的系统日志。 |
adb logcat |
adb logcat -c |
清除之前的日志缓存。 |
adb logcat -c |
adb logcat -v <format> |
设置日志输出格式 (如 time, threadid, tag 等)。 |
adb logcat -v time |
adb logcat *:S |
静默所有标签的日志,只显示你指定的。 |
adb logcat (然后输入 *:S 再回车) |
adb logcat <tag>:<priority> *:S |
只显示特定标签和优先级的日志。 |
adb logcat ActivityManager:I *:S |
Shell 命令
| 命令 |
解释 |
示例 |
adb shell |
进入设备的 Linux Shell 环境。 |
adb shell |
adb shell <command> |
在设备上执行一条 Shell 命令后退出。 |
adb shell settings get secure android_id |
adb shell wm size |
获取设备屏幕分辨率。 |
adb shell wm size |
adb shell wm density |
获取设备屏幕密度。 |
adb shell wm density |
adb shell input keyevent <keycode> |
模拟按键输入。 |
adb shell input keyevent 26 (电源键) |
adb shell input text <text> |
在当前焦点输入文本。 |
adb shell input text "Hello World" |
adb shell screencap -p <path> |
截取屏幕并保存到设备。 |
adb shell screencap -p /sdcard/screenshot.png |
adb shell screenrecord <path> |
录制屏幕,按 Ctrl+C 停止。 |
adb shell screenrecord /sdcard/record.mp4 |
系统信息
| 命令 |
解释 |
示例 |
adb shell getprop |
获取所有系统属性。 |
adb shell getprop |
adb shell getprop <key> |
获取特定的系统属性值。 |
adb shell getprop ro.build.version.release (获取安卓版本) |
adb shell settings get global airplane_mode_on |
获取飞行模式状态。 |
adb shell settings get global airplane_mode_on |
adb shell dumpsys |
获取系统所有服务的详细信息。 (信息量巨大) |
adb shell dumpsys |
adb shell dumpsys battery |
获取电池状态信息。 |
adb shell dumpsys battery |
Fastboot 命令大全
前提: 设备必须处于 Fastboot 模式 (通常通过关机后长按 音量下 + 电源键 进入)。
基础命令
| 命令 |
解释 |
示例 |
fastboot devices |
检测电脑是否已识别到处于 Fastboot 模式的设备。 |
fastboot devices |
fastboot reboot |
重启设备到正常安卓系统。 |
fastboot reboot |
fastboot reboot bootloader |
重启设备到 Bootloader (Fastboot) 模式。 |
fastboot reboot bootloader |
fastboot reboot recovery |
重启设备到 Recovery 模式。 |
fastboot reboot recovery |
分区操作
| 命令 |
解释 |
示例 |
fastboot oem unlock |
解锁 Bootloader (可能需要清空数据)。 |
fastboot oem unlock |
fastboot oem lock |
重新锁定 Bootloader (提高安全性)。 |
fastboot oem lock |
fastboot flashing unlock |
解锁 Bootloader (部分新设备使用)。 |
fastboot flashing unlock |
fastboot flashing lock |
重新锁定 Bootloader。 |
fastboot flashing lock |
fastboot erase <partition> |
擦除指定分区的所有数据。 |
fastboot erase cache |
fastboot format <partition> |
格式化指定分区。 |
fastboot format system |
fastboot getvar <variable> |
获取 Bootloader 变量。 |
fastboot getvar all (获取所有变量) |
fastboot getvar product |
获取设备产品型号。 |
fastboot getvar product |
镜像操作
| 命令 |
解释 |
示例 |
fastboot flash <partition> <image> |
将镜像文件刷入指定分区。 |
fastboot flash boot boot.img |
fastboot flashall |
刷入一个包含 boot.img, system.img 等的完整包。 |
fastboot flashall |
fastboot boot <recovery.img> |
从内存启动一个 Recovery 镜像 (不刷入)。 |
fastboot boot twrp.img |
fastboot -w |
格式化 data/cache 分区,等同于 fastboot erase system && fastboot erase data。 |
fastboot -w |
fastboot -u |
在刷入新系统后自动更新 Super 分区 (适用于 A/B 分区设备)。 |
fastboot -u flash system system.img |
OEM 厂商命令
| 命令 |
解释 |
示例 |
fastboot oem device |
获取设备信息。 |
fastboot oem device |
fastboot oem edl |
进入 Download 模式 (高通设备)。 |
fastboot oem edl |
fastboot oem fb_mode_clear |
清除某些设备的 Fastboot 模式密码。 |
fastboot oem fb_mode_clear |
常见问题与解决方案
adb devices 显示 unauthorized
- 原因: 电脑未被设备授权。
- 解决:
- 在手机上找到“USB 调试”的弹窗提示。
- 点击“允许”或“确定”。
- 如果没有弹窗,检查手机的 USB 连接模式是否为“传输文件”或 “MTP” 模式。
- 拔掉 USB 线,重新连接,并再次点击“允许”。
adb command not found
- 原因: ADB 所在的文件夹未添加到系统环境变量
Path 中。
- 解决:
- 找到你解压
platform-tools 的文件夹。
- 将该文件夹的完整路径复制。
- 在 Windows 中搜索“编辑系统环境变量”,打开“系统属性” -> “高级” -> “环境变量”。
- 在“系统变量”中找到
Path 变量,点击“编辑” -> “新建”,然后粘贴你复制的路径。
- 重启命令行工具。
fastboot oem unlock 失败
- 原因:
- 未在开发者选项中启用“OEM 解锁”选项。
- 设备已锁定 Bootloader,需要通过特定组合键进入 Bootloader 模式。
- 需要在电脑上按住某个音量键才能解锁。
- 解决:
- 确保在手机的“开发者选项”中开启了“OEM 解锁”。
- 按照手机厂商的官方指引正确进入 Bootloader 模式。
- 对于一些设备 (如 Google Pixel),解锁时会清空所有数据,请提前备份。
设备无法进入 Fastboot 模式
- 解决方法 (不同品牌组合键可能不同):
- Google Pixel: 关机后,长按
音量下 + 电源键。
- 小米/Redmi: 关机后,长按
音量下 + 电源键。
- 华为: 关机后,长按
音量上 + 电源键。
- 三星: 关机后,长按
音量上 + 电源键 + Bixby 键 (若无 Bixby,则长按 音量上 + 电源键)。
- 一加: 关机后,长按
音量下 + 电源键。
- 如果上述方法无效,请搜索你 具体手机型号 + “进入 Fastboot 模式”的方法。
总结与安全提示
- ADB 是日常调试、维护、管理应用的利器,相对安全。
- Fastboot 是刷机、解锁 Bootloader 的强大工具,操作风险极高。
- 安全提示:
- 备份!备份!备份! 在进行任何刷机、解锁、擦除分区操作前,请务必备份好所有重要数据。
- 确认设备型号: 确保你刷入的镜像文件与你的设备型号完全匹配,否则可能导致设备变砖。
- 了解风险: 解锁 Bootloader 会清除设备数据,并可能使设备保修失效。
- 从官方或可信来源获取镜像: 不要从不明来源下载固件或刷机包。
这份大全应该能覆盖你 99% 的使用场景,祝使用愉快!