本文将介绍Android开发过程中一些非常实用的adb命令。
1.当设备连接不上时,经常使用的命令
- adb kill-server 杀死adb服务
- adb start-server 启动adb服务
- adb devices 查看当前连接设备列表
当上面方法行不通时,有可能5037端口被占用,可用命令查看 netstat -ano | grep 5037 查看5037端口被哪个进程占用(如果你使用的是windows环境没有grep命令, 可以用findstr代替)
—java
tcp 0 0 127.0.0.1:5037 0.0.0.0:* LISTEN 关闭 (0.00/0/0)kill -9 ××××(进程号) -9表示强制 (windows环境用 taskkill /f /pid xxxx)
注:如果这些方法都没用,可以尝试进入开发者选项,关闭USB调试开关,重新打开。一般来说,这几个命令可以解决80%以上的设备连接问题。
2.安装、卸载、清数据
- adb install package_name 安装应用 package_name为应用包名
- adb uninstall package_name 卸载应用
- adb shell pm clear package_name 清空应用数据
3.打印日志
- adb logcat -v time
打印日志 - adb logcat -v time | grep TestActivity
打印日志,使用grep过滤日志内容。 - adb logcat -v time > log.log
该命令可实现按时间顺序输出日志到log.log文件中。
4.文件传输
- adb pull source_filepath target_filepath
pull命令可将设备中的源文件source_filepath 复制到电脑target_filepath - adb push source_filepath target_filepath
push命令是将电脑上的文件复制到设备中去。
5.查看APP可使用的最大内存
- adb shell getprop| grep heap
heapgrowthlimit就是app可以使用的最大内存,如果应用内存占用超过这个值,就会出现OOM。
[dalvik.vm.heapgrowthlimit]: [128m]
[dalvik.vm.heapmaxfree]: [8m]
[dalvik.vm.heapminfree]: [512k]
[dalvik.vm.heapsize]: [384m]
[dalvik.vm.heapstartsize]: [8m]
[dalvik.vm.heaptargetutilization]: [0.75]
6.查看设备CPU占用情况
- adb shell top
- adb shell top -m 10 (筛选前10)
- adb shell top -t -m 10 (-t表示显示是哪个线程占用的)
Github上有一个adb用法大全,有兴趣的可以去看看,附上链接:https://github.com/mzlogin/awesome-adb