Android 常用 adb 命令

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Android 常用 adb 命令相关的知识,希望对你有一定的参考价值。

(一)基础操作

  • 安装app

    adb install -r xxx.apk //覆盖安装,保留数据和缓存文件
    adb install -s xxx.apk //安装apk到sd卡
    adb install -f xxx.apk //安装apk到内部系统内存
    adb install -d xxx.apk //安装低版本Apk
    adb install -g xxx.apk //准许Apk manifest中的所有权限
    
  • 获取安装位置

    adb shell pm get-install-location
    
  • 卸载app

    adb uninstall <package>
    adb uninstall -k <package> //卸载app但保留数据和缓存文件
    
  • 重启手机

    adb reboot
    
  • 启动adb服务

    adb start-server
    
  • 关闭服务

    adb kill-server 
    
  • 进入shell环境

    adb shell
    

(二)设备信息查看

  • 查看所连接的设备以及设备所对应的序列号

    adb devices
    
  • 查看手机CPU架构(eg.ARMv7) 和内核个数

    adb shell cat /proc/cpuinfo
    
  • 查看系统的详尽内存信息,包含内核情况

    adb shell cat /proc/meminfo
    
  • 获取手机磁盘空间

    adb shell df
    
  • 获取手机系统版本

    adb shell getprop ro.build.version.release
    
  • 获取机器MAC地址:

    adb shell  cat /sys/class/net/wlan0/address
    
  • 查看wifi密码

    adb shell cat /data/misc/wifi/*.conf
    

(三)pm / am相关

  • 清除应用的数据

    adb shell pm clear <package>
    
  • 查看App路径

    adb shell pm path <package>
    
  • 查看所有已安装的应用的包名

    adb shell pm list packages -f
    
  • 查看含有“google”字段的应用的包名

    adb shell pm list packages google
    
  • 查看第三方应用的包名

    adb shell pm list packages -3
    
  • 启动某个应用的某个Activity

    adb shell am start -n packagename/packagename.activityname
    如:adb shell am start -n com.company.appname/ .SplashActivity -es url http://www.baidu.com 
    //-es表示需传递参数,其中url表示参数名,链接表示具体参数值
    
  • 拨打电话

    adb shell am start -a android.intent.action.CALL -d tel:10086
    
  • 打开网站

    adb shell am start -a android.intent.action.VIEW -d http://www.baidu.com
    

(四)进程 / 服务查看

  • 查看进程信息

    adb shell ps | grep xxx
    
  • 查看指定进程状态

    adb shell ps -x [pid]
    
  • 周期性地打印出进程运行队列、系统切换、CPU时间占比等情况

    adb shell vmstat
    
  • 各进程内存使用情况

    adb shell procrank
    
  • 杀死一个进程

    adb shell kill [pid]
    
  • 查看后台services信息

    adb shell service list
    

(五)dumpsys系列

  • 查看当前手机所支持的dump服务

    adb shell dumpsys -l
    
  • 查看包信息 Package Information

    adb shell dumpsys package
    adb shell dumpsys package packages | grep <package>  //查看某个app资源路径
    
  • 查看内存使用情况

    adb shell dumpsys meminfo | grep xxx
    adb shell dumpsys meminfo <pid> // 输出指定pid的内存使用情况
    adb shell dumpsys meminfo --package <package> // 输出指定包名内存使用情况
    adb shell top -m 6 //查看内存占用前6的app
    
  • 查看栈顶Activity,可以用来获取包名,查看其它app的包名

    adb shell dumpsys activity top
    
  • 查看渲染耗时

    adb shell dumpsys gfxinfo <package> > /sdcard/fps.txt 
    取出文件:adb pull /sdcard/fps.txt /Users/admin/Downloads/1234.txt
    
  • 查看am的状态

    adb shell dumpsys activity
    
  • Memory Use Over Time

    adb shell dumpsys procstats
    

(六)文件操作

  • 移动文件/文件夹

    adb shell mv path/file newpath/file
    
  • 新建文件夹

    adb shell mkdir path
    
  • 新建文件

    adb shell touch filename
    
  • 重命名文件/文件夹

    adb shell rename path/filename newpath/newfilename
    
  • 查看文件内容

    adb shell cat file
    
  • 从手机复制文件到电脑

    adb pull /data/anr/traces.txt /Users/admin/Downloads/1234.txt
    
  • 从电脑向手机发送文件

    adb push foo.txt /sdcard/foo.txt
    

(七)log相关

  • 查看日志

    adb logcat | grep xxx
    
  • 日志输出到文件

    adb logcat -d > ~/Desktop/logcat.txt //保存到桌面,需要android.permission.READ_LOGS
    
  • 清除log缓存

    adb logcat -c
    

(八)其他

  • 连接到指定的ip,通常配合wifidebug

    adb connect <device-ip-address>
    
  • 跑monkey

    adb shell monkey -v -p <package> 500 // 跑500次
    
  • 截屏

    adb shell /system/bin/screencap -p /sdcard/screenshot.png
    adb pull /sdcard/screenshot.png ./Dowload/screenshot.png(保存到电脑)
    
  • 屏幕录制

    adb shell screenrecord  --time-limit 30 /sdcard/demo.mp4
    adb pull /sdcard/demo.mp4 ./Downloads/
    

深入学习

以上是关于Android 常用 adb 命令的主要内容,如果未能解决你的问题,请参考以下文章

Android 开发常用的adb命令

Android常用的ADB命令

Android 常用 adb 命令总结

Android 常用 adb 命令总结

Android -- adb常用命令

Android 中常用的 adb shell 命令