ADB是Android开发和调试的核心工具,从基础的文件传输到高级性能分析,覆盖了设备管理的全场景。通过本文的详细示例,新手可以快速上手,而专业开发者也能深入掌握ADB的高级用法。无论是日常开发还是紧急调试,熟练使用ADB将大幅提升工作效率
1. ADB简介Android Debug Bridge(ADB)是Android SDK中的核心命令行工具,用于与Android设备或模拟器通信。它支持应用安装/卸载、文件传输、系统调试、性能监控等操作,是开发者和高级用户的必备工具。
2. 安装与配置2.1 安装Android SDK Platform-Tools下载地址:Android开发者平台工具安装步骤:
Windows/macOS/Linux:解压下载的ZIP包至目录(如C:\platform-tools或~/android/platform-tools)。2.2 配置环境变量Windows:
右键“此电脑” → 属性 → 高级系统设置 → 环境变量 → 编辑Path → 添加ADB路径(如C:\platform-tools)。macOS/Linux:
# 编辑Shell配置文件(如~/.bashrc或~/.zshrc)
echo 'export PATH=$PATH:~/android/platform-tools' >> ~/.zshrc
source ~/.zshrc2.3 验证安装adb version
# 输出示例:Android Debug Bridge version 1.0.413. 设备连接与授权3.1 启用开发者模式进入设备 设置 → 关于手机 → 版本号,连续点击7次解锁开发者选项。返回设置,进入 开发者选项 → 启用USB调试。3.2 连接设备通过USB连接设备,首次连接时设备会弹出 “允许USB调试” 提示,勾选“始终允许”并确认。验证连接:
adb devices
# 成功连接示例:
# List of devices attached
# 1234567890ABCDEF device4. 基础操作命令4.1 应用管理安装APK:
adb install app.apk # 默认安装
adb install -t app.apk # 允许测试包
adb install -r app.apk # 覆盖安装(保留数据)卸载应用:
adb uninstall com.example.app # 卸载应用但保留数据
adb uninstall -k com.example.app # 卸载应用并删除数据4.2 文件传输从设备拉取文件:
adb pull /sdcard/Download/file.txt ~/Desktop/向设备推送文件:
adb push ~/Documents/image.jpg /sdcard/Pictures/4.3 屏幕操作截屏:
adb shell screencap -p /sdcard/screen.png
adb pull /sdcard/screen.png ~/Desktop/录屏(最长3分钟):
adb shell screenrecord --bit-rate 4000000 /sdcard/demo.mp4
# 按Ctrl+C停止录制后拉取文件4.4 输入模拟点击屏幕坐标:
adb shell input tap 500 1000滑动操作:
adb shell input swipe 100 500 1000 500 200 # 从(100,500)滑动到(1000,500),耗时200ms文本输入:
adb shell input text "Hello_World" # 注意:空格需用下划线代替5. 高级操作与技巧5.1 应用包管理列出所有应用包名:
adb shell pm list packages
# 输出示例:package:com.android.chrome过滤应用:
adb shell pm list packages -s # 仅系统应用
adb shell pm list packages -3 # 仅第三方应用
adb shell pm list packages -f # 显示APK路径5.2 应用控制清除应用数据:
adb shell pm clear com.example.app # 重置应用(等效于“清除数据”)禁用/启用系统应用:
adb shell pm disable-user com.android.bluetooth # 禁用蓝牙
adb shell pm enable com.android.bluetooth # 重新启用5.3 备份与恢复全量备份(需设备确认):
adb backup -all -f backup.ab恢复备份:
adb restore backup.ab6. 设备管理与调试6.1 设备信息查询查看设备型号:
adb shell getprop ro.product.model # 输出示例:Pixel 6查看Android版本:
adb shell getprop ro.build.version.release # 输出示例:13查看电池状态:
adb shell dumpsys battery
# 输出示例:
# Current Battery Service state:
# AC powered: false
# USB powered: true
# Wireless powered: false
# status: 2
# health: 2
# level: 856.2 设备重启与模式切换重启设备:
adb reboot进入Recovery模式:
adb reboot recovery进入Bootloader模式:
adb reboot bootloader7. 性能监控与日志分析7.1 实时日志抓取查看全部日志:
adb logcat按标签过滤日志:
adb logcat -s ActivityManager:V *:S # 仅显示ActivityManager的Verbose日志按优先级过滤:
adb logcat *:E # 仅显示Error级别日志7.2 性能分析CPU占用监控:
adb shell top -n 1 | grep com.example.app
# 输出示例:
# 12345 u0_a123 20 0 1.2G 200M 180M S 45% com.example.app内存使用分析:
adb shell dumpsys meminfo com.example.app
# 输出示例:
# Applications Memory Usage (kB):
# Uptime: 123456789 Realtime: 123456789
# ** MEMINFO in pid 12345 [com.example.app] **8. 无线调试与多设备管理8.1 无线调试配置通过USB初始化:
adb tcpip 5555 # 开启设备的TCP端口
adb connect 192.168.1.100:5555 # 通过IP连接断开USB后继续调试:
adb -s 192.168.1.100:5555 shell # 指定设备执行命令8.2 多设备操作列出所有设备:
adb devices -l
# 输出示例:
# 1234567890ABCDEF device product:walleye model:Pixel_2指定设备执行命令:
adb -s 1234567890ABCDEF install app.apk9. 常见问题与解决方案9.1 设备未识别检查项:
USB线是否正常。开发者选项和USB调试是否开启。设备驱动是否安装(Windows需手动安装Google USB Driver)。9.2 ADB命令无响应解决方法:
adb kill-server # 终止ADB服务
adb start-server # 重启服务9.3 无线连接失败排查步骤:
确认设备和电脑在同一网络。检查防火墙是否阻止端口5555。重新执行adb tcpip 5555初始化。版权声明:本文为原创文章,版权归 全栈开发技术博客 所有。
本文链接:https://www.lvtao.net/tool/android-adb.html
转载时须注明出处及本声明