科普:ADB的全称是AndroidDebugBridge
熟练掌握ADB命令可以提高开发效率
以下记录一些比较常用的命令
adbstart-server启动adb服务,如果它没启动的话
adbkill-server关闭服务
adbdevices查看所连接的设备以及设备所对应的序列号
adbinstall-rxxxx.apk安装app,需要注意的是如果连接了两台设备,则会报错,此时可以添加-sserialNumber来处理
adbuninstallpackagename卸载app,有时候在手机上卸载App会出现数据清理不干净,导致App再也装不上了,这个时候可以敲命令来卸载
adbshell进入shell环境
adbshellpmclearpackagename清除应用的数据,很常用吧?
adbshellamstart-npackagename/packagename.activityname
启动某个应用的某个Activity(以前调试老年机,那种Launcher上没有APP的机器,全靠它啊!!!!!!!)
adbconnectdevice-ip-address连接到指定的ip,这个通常配合wifidebug
adbshelldumpsysactivitytop查看栈顶Activity,可以用来获取包名,可以用来查看其它app的包名
adbshellps查看进程信息
adbshellpmlistpackages-f查看所有已安装的应用的包名
adbshelldumpsysactivitydumpsys系列命令可以帮助我们查看各种信息am的状态ActivityManagerState
adbshelldumpsyspackage包信息PackageInformation
adbshelldumpsysmeminfo内存使用情况MemoryUsage
adbpullremotelocal从手机复制文件出来,比如把Crash日志写在SD卡上,再pull到电脑上或者pullANR的trace日志
adbpushlocalremote向手机发送文件,比如测试热修复补丁~
eg.adbpushfoo.txt/sdcard/foo.txt
adbshellcat/proc/cpuinfo查看手机CPU,可以看到手机架构(eg.ARMv7)和几核处理器可以帮助我们选择so库,排查手机cpu架构相关的问题
不太常用的命令
adbshelldf获取手机磁盘空间
adbshellgetpropro.build.version.release获取手机系统版本
adbshelldumpsysprocstatsMemoryUseOverTime
adbshelldumpsysgfxinfoGraphicsState
adbversion查看adb版本
adbhelp
进入adb帮助界面