菜鸟科技网

adb与fastboot命令有哪些?

目录

  1. 前置准备
    • 什么是 ADB 和 Fastboot?
    • 如何安装 ADB 和 Fastboot?
    • 如何在电脑上启用 ADB 调试模式?
    • 如何在电脑上识别设备?
  2. ADB (Android Debug Bridge) 命令大全
    • 基础命令 (设备连接、状态查询)
    • 应用管理 (安装、卸载、强制停止)
    • 文件管理 (推送、拉取)
    • 日志管理 (查看、过滤日志)
    • Shell 命令 (进入设备终端)
    • 系统信息 (获取设备详情)
    • 高级操作 (屏幕录制、输入、模拟按键)
    • 开发者选项 (启用/禁用)
  3. Fastboot 命令大全
    • 基础命令 (设备连接、解锁、重启)
    • 分区操作 (解锁、擦除、刷新镜像)
    • 镜像操作 (刷入、获取、备份)
    • OEM 厂商命令 (解锁、重新锁定)
    • 高级/系统命令 (获取变量、设置属性)
  4. 常见问题与解决方案
    • adb devices 显示 unauthorized (未授权)
    • adb command not found (命令未找到)
    • fastboot oem unlock 失败
    • 设备无法进入 Fastboot 模式
  5. 总结与安全提示

前置准备

什么是 ADB 和 Fastboot?

  • ADB (Android Debug Bridge): 一个多功能命令行工具,可以让你与连接的 Android 设备进行通信,它主要用于调试、安装应用、访问 Shell、管理文件等,设备需要开机并 启用“USB调试” 模式。
  • Fastboot: 一个更底层的协议和工具,用于在设备 完全关机 并进入 Fastboot 模式 (也称为 Bootloader 模式) 时与设备通信,它主要用于刷写分区、解锁 Bootloader、刷入自定义 Recovery 或系统镜像等操作。

如何安装 ADB 和 Fastboot?

最简单的方法是使用 Google 提供的官方 SDK Platform Tools。

adb与fastboot命令有哪些?-图1
(图片来源网络,侵删)
  1. 访问 Android Developers 官网
  2. 下载适用于你操作系统 (Windows, macOS, Linux) 的 SDK Platform Tools。
  3. 下载后解压到一个固定的文件夹,D:\platform-tools
  4. 重要: 将此文件夹路径添加到系统的环境变量 Path 中,这样你就可以在任何目录下直接使用 adbfastboot 命令。

如何在设备上启用 USB 调试?

  1. 进入 设置 > 关于手机
  2. 连续点击 “版本号”或“内部版本号” 7次,直到提示“你已处于开发者模式”。
  3. 返回 设置 > 系统 > 开发者选项
  4. 找到并开启 “USB 调试” 开关。
  5. 首次连接时,手机屏幕上会弹出“允许 USB 调试吗?”的提示,请勾选“始终允许此计算机”并点击“允许”。

如何在电脑上识别设备?

连接设备后,打开电脑的命令行工具 (Windows: cmdPowerShell, 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 模式 (通常通过关机后长按 音量下 + 电源键 进入)。

adb与fastboot命令有哪些?-图2
(图片来源网络,侵删)

基础命令

命令 解释 示例
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

  • 原因: 电脑未被设备授权。
  • 解决:
    1. 在手机上找到“USB 调试”的弹窗提示。
    2. 点击“允许”或“确定”。
    3. 如果没有弹窗,检查手机的 USB 连接模式是否为“传输文件”或 “MTP” 模式。
    4. 拔掉 USB 线,重新连接,并再次点击“允许”。

adb command not found

  • 原因: ADB 所在的文件夹未添加到系统环境变量 Path 中。
  • 解决:
    1. 找到你解压 platform-tools 的文件夹。
    2. 将该文件夹的完整路径复制。
    3. 在 Windows 中搜索“编辑系统环境变量”,打开“系统属性” -> “高级” -> “环境变量”。
    4. 在“系统变量”中找到 Path 变量,点击“编辑” -> “新建”,然后粘贴你复制的路径。
    5. 重启命令行工具。

fastboot oem unlock 失败

  • 原因:
    • 未在开发者选项中启用“OEM 解锁”选项。
    • 设备已锁定 Bootloader,需要通过特定组合键进入 Bootloader 模式。
    • 需要在电脑上按住某个音量键才能解锁。
  • 解决:
    1. 确保在手机的“开发者选项”中开启了“OEM 解锁”。
    2. 按照手机厂商的官方指引正确进入 Bootloader 模式。
    3. 对于一些设备 (如 Google Pixel),解锁时会清空所有数据,请提前备份。

设备无法进入 Fastboot 模式

  • 解决方法 (不同品牌组合键可能不同):
    • Google Pixel: 关机后,长按 音量下 + 电源键
    • 小米/Redmi: 关机后,长按 音量下 + 电源键
    • 华为: 关机后,长按 音量上 + 电源键
    • 三星: 关机后,长按 音量上 + 电源键 + Bixby 键 (若无 Bixby,则长按 音量上 + 电源键)。
    • 一加: 关机后,长按 音量下 + 电源键
    • 如果上述方法无效,请搜索你 具体手机型号 + “进入 Fastboot 模式”的方法。

总结与安全提示

  • ADB 是日常调试、维护、管理应用的利器,相对安全。
  • Fastboot 是刷机、解锁 Bootloader 的强大工具,操作风险极高
  • 安全提示:
    1. 备份!备份!备份! 在进行任何刷机、解锁、擦除分区操作前,请务必备份好所有重要数据。
    2. 确认设备型号: 确保你刷入的镜像文件与你的设备型号完全匹配,否则可能导致设备变砖。
    3. 了解风险: 解锁 Bootloader 会清除设备数据,并可能使设备保修失效。
    4. 从官方或可信来源获取镜像: 不要从不明来源下载固件或刷机包。

这份大全应该能覆盖你 99% 的使用场景,祝使用愉快!

adb与fastboot命令有哪些?-图3
(图片来源网络,侵删)
分享:
扫描分享到社交APP
上一篇
下一篇