ADB 命令大全:从有趣好玩到刷机硬核,一篇搞定

ADB 命令是什么?

玩 Android 的,多少都跟 ADB 打过交道。不管你是开发者、刷机爱好者,还是单纯想给手机折腾点新花样的普通用户,ADB 都是一个绕不开的工具。

ADB 全称 Android Debug Bridge,说白了就是让你在电脑上直接操控手机的桥梁。插上数据线(甚至不用插线,WiFi 也能连),你就能在终端里对手机发号施令。

今天把我在日常使用和折腾过程中攒下来的一些命令整理一下,分三个方向:好玩有趣的日常高频的刷机相关的。建议收藏,用到的时候翻一翻。

一、好玩有趣的 ADB 命令 🎮

这部分命令平时用得不多,但拿出去秀一下绝对够用。

1. 截屏并拉取到电脑

adb shell screencap -p /sdcard/screen.png
adb pull /sdcard/screen.png

比按组合键截屏快多了,尤其是需要频繁截图的时候。我一般是做成一个 alias 随手敲。

2. 录制手机屏幕视频

adb shell screenrecord /sdcard/demo.mp4
# Ctrl+C 停止录制
adb pull /sdcard/demo.mp4

做教程或者录 bug 的时候特别好用。默认最长录 3 分钟,不够的话可以加 --time-limit 参数。

3. 模拟点击和滑动

# 模拟点击坐标 (500, 1000)
adb shell input tap 500 1000

# 模拟滑动,从 (x1,y1) 到 (x2,y2),持续 300ms
adb shell input swipe x1 y1 x2 y2 300

# 模拟按键
adb shell input keyevent 26     # 电源键
adb shell input keyevent 3      # Home 键
adb shell input keyevent 4      # 返回键
adb shell input keyevent 66     # 回车键

可以用来写自动化脚本。比如我之前就写过一个小脚本,每天早上自动打卡签到,不用掏手机。

4. 假装手机快没电了 😈

adb shell dumpsys battery set level 5

电量秒变 5%,拿去整蛊同事朋友效果拔群。恢复用 adb shell dumpsys battery reset 就行。

5. 修改屏幕分辨率

# 查看当前分辨率
adb shell wm size

# 修改分辨率
adb shell wm size 1080x1920

# 恢复默认
adb shell wm size reset

降低分辨率能提升游戏帧率,这个我在一台老手机上试过,确实有效果。

6. 修改屏幕密度(DPI)

adb shell wm density 320
adb shell wm density reset

调小 DPI 可以让一屏显示更多内容,大屏手机调一下会很爽。不过别调太狠,图标会小到点不到。

二、日常高频使用的 ADB 命令 🔧

这些是我平时用得最多的,基本上每天都在跟它们打交道。

1. 连接设备

# 查看已连接的设备
adb devices

# WiFi 无线连接
adb connect 192.168.1.100:5555

# 断开连接
adb disconnect 192.168.1.100:5555

Android 11 以上支持无线调试,先在开发者选项里开启无线调试,拿到配对码之后:

adb pair 192.168.1.100:37123
adb connect 192.168.1.100:5555

配好对之后就可以不用数据线了,体验很好。

2. 安装和卸载应用

# 安装 APK
adb install app.apk

# 覆盖安装(保留数据)
adb install -r app.apk

# 降级安装
adb install -d app.apk

# 彻底卸载
adb uninstall com.example.app

# 卸载但保留数据
adb uninstall -k com.example.app

3. 文件传输

# 电脑 → 手机
adb push localfile.txt /sdcard/

# 手机 → 电脑
adb pull /sdcard/screenshot.png .

# 推送整个文件夹
adb push ./myfolder /sdcard/

4. 查看日志

# 实时查看日志
adb logcat

# 过滤关键词
adb logcat | grep "ERROR"

# 清除日志
adb logcat -c

# 保存到文件
adb logcat -d > logcat.txt

排查 App 崩溃问题基本全靠 logcat。建议配合 grep 使用,不然日志量太大了。

5. 查看设备信息

# Android 版本
adb shell getprop ro.build.version.release

# 设备型号
adb shell getprop ro.product.model

# CPU 信息
adb shell cat /proc/cpuinfo

# 内存使用
adb shell dumpsys meminfo

# 存储空间
adb shell df -h

6. 端口转发

# 电脑端口 → 手机端口
adb forward tcp:8080 tcp:8080

# 手机端口 → 电脑端口
adb reverse tcp:8080 tcp:8080

开发 Web 应用的时候特别好用。手机上访问 localhost:8080 直接连到电脑的 8080 端口,调试方便很多。

7. 管理应用权限

# 授予权限
adb shell pm grant com.example.app android.permission.CAMERA

# 撤销权限
adb shell pm revoke com.example.app android.permission.CAMERA

8. 冻结系统应用(免 root)

# 禁用应用
adb shell pm disable-user --user 0 com.example.bloatware

# 恢复启用
adb shell pm enable com.example.bloatware

# 查看被禁用的应用
adb shell pm list packages -d

手机自带的一堆乱七八糟预装应用,不想 root 又想干掉的话,这条命令就是神器。冻结后跟卸载效果差不多,但不影响系统稳定性,随时可以恢复。

9. 进入 Shell

# 进入手机 shell
adb shell

# 或者单条执行
adb shell getprop ro.product.model

三、刷机相关的硬核命令 🔥

操作之前一定一定一定要备份数据!重要的事情说三遍。以下命令操作不当可能导致手机变砖,请先在备用机上练手。

1. 进入 Fastboot 模式

adb reboot bootloader

Fastboot 是比 ADB 更底层的工具,手机需要在 Bootloader 界面下才能用。连上后先确认设备:

fastboot devices

2. 解锁 Bootloader

fastboot flashing unlock
# 或者老设备用
fastboot oem unlock

解锁会清除所有数据,而且不同品牌的解锁方式可能不一样。小米需要先申请解锁权限,一加和 Pixel 相对自由。解锁前先去你手机品牌的论坛查清楚流程。

3. 刷入 Recovery

# 刷入 TWRP 等第三方 Recovery
fastboot flash recovery twrp.img

# 临时启动(不永久刷入)
fastboot boot twrp.img

建议先用 fastboot boot 临时启动看看能不能用,确认没问题再 flash 写进去。

4. 刷入系统镜像

fastboot flash boot boot.img
fastboot flash system system.img
fastboot flash vendor vendor.img
fastboot flash userdata userdata.img
fastboot flash radio radio.img
fastboot flash bootloader bootloader.img

刷系统镜像的时候,顺序一般是 bootloader → radio → system → vendor → boot。当然现在很多线刷包自带脚本,不用手动一个个刷。

5. 一键线刷

像 Pixel 的 factory image 解压后直接有个 flash-all.sh(Linux/Mac)或 flash-all.bat(Windows),跑一下就行了:

./flash-all.sh

省心省力,救砖的时候尤其好用。

6. 擦除分区

fastboot erase system
fastboot erase data
fastboot erase cache
fastboot erase userdata

# 格式化
fastboot format data
fastboot format cache

擦除 data 分区 = 恢复出厂设置,所有用户数据都会丢失。双清/三清的时候就是用的这些命令。

7. 刷 Magisk 获取 Root

# 提取 boot.img
adb shell "su -c dd if=/dev/block/bootdevice/by-name/boot of=/sdcard/boot.img"
adb pull /sdcard/boot.img

# 用 Magisk App 修补后刷回
fastboot flash boot magisk_patched.img

现在 Root 基本都用 Magisk 了,流程就是:提取 boot.img → 用 Magisk App 修补 → fastboot 刷回去。不同机型提取 boot.img 的方法可能不一样,建议去 XDA 或酷安查你机型的教程。

8. 救砖

手机变砖了别慌,先确认还能不能被电脑识别:

fastboot devices

如果 fastboot 都进不去,可以尝试进 EDL 模式(高通芯片专用):

adb reboot edl
# 或者
fastboot oem edl

EDL 模式下可以用 QFIL、MiFlash 等工具救回来。不过到这个地步建议去论坛找专门救砖的帖子,自己瞎搞可能会更麻烦。

四、实用技巧 💡

1. 创建快捷命令

.bashrc.zshrc 里加几个 alias,效率能提升不少:

alias adbi='adb devices'
alias adblog='adb logcat | grep -i'
alias adbsc='adb shell screencap -p /sdcard/s.png && adb pull /sdcard/s.png'
alias adbin='adb install -r'

2. 多设备操作

# 通过序列号指定设备
adb -s DEVICE_SERIAL install app.apk

# 查看所有设备
adb devices -l

3. 查看当前 Activity

adb shell dumpsys activity | grep "mResumedActivity"

这条命令经常用。想知道当前屏幕上是哪个 App 的哪个页面,一条命令搞定。写自动化脚本的时候特别有用。

4. 备份与恢复

# 备份
adb backup -f backup.ab -noapk com.example.app

# 恢复
adb restore backup.ab

不过说实话这条命令在新的 Android 版本上限制越来越多,很多 App 已经不允许备份了。仅供参考。

五、常用 Keyevent 键值速查 📋

配合 adb shell input keyevent 使用:

键值功能键值功能
3Home26电源
4返回27拍照
5拨号64浏览器
6挂断66回车
24音量+82菜单
25音量-85播放/暂停

最后

ADB 用好了是真香,但刷机这块还是建议先在模拟器或者备用机上折腾,别拿主力机当试验品。我当年就曾经在主力机上刷错镜像,数据全没了,血的教训。

有自己觉得好用的 ADB 命令,评论区分享一下?