在开发Android 的系统应用时,以下adb命令都是比较常用的
1、获取root权限:adb root,获取超级管理员权限
应用场景:访问应用数据(数据库、缓存、文件等),如data/data/包名/目录下的数据
2、挂载命令:adb remount,该命令通常需要取得了root权限之后才能执行,
应用场景:最常用于卸载系统预装应用,如删除system/app/目录下的预装应用
3、安装/卸载apk:adb install/uninstall package_name
替换安装:adb install -r package_name
4、log调试:
(1)adb logcat TAG:d *:s
说明:adb专门用于log的过滤,只打印TAG指定等级(如d)的log到控制台上,该命令还是非常方便的。
(2)adb logct -c && adb logcat *:e
说明:用于过滤error级别的log
5、dump数据:adb shell dumpsys
说明:向控制台打印当前设备的状态,如内存信息、进程信息、组件信息等,非常有用的调试命令
应用场景:
(1)查看后台应用的activity有无释放,adb shell dumpsys meminfo package_name
(2)查看activity的布局结构:adb shell dumpsys activity top
(3)查看当前设备显示的窗口层级结构:adb shell dumpsys SurfaceFlinger
6、拉取/推送文件:adb pull/push 命令
说明:拉取命令用于将设备上的某个文件发送到PC上;而推送命令则是将PC上的某个文件发送到设备上。
应用场景:adb pull sdcard/mtklog.txt /home/log adb push xx.apk sdcard/app
7、重启命令:adb reboot
应用场景:进入刷机模式,具体adb reboot命令是由rom厂商自定,可能是adb reboot -fb/fastboot
8、启动activity:adb shell am start 包名/.类名 adb shell am start 包名/类的全名
说明:模拟系统Intent,用于调试activity