ADB命令学习


  1. 查看当前连接的设备

    adb devices
    

  1. 多个设备操作,带上设备号

    adb -s 设备号 其他命令
    
  2. 查看顶部Activity

    adb shell dumpsys activity | findstr "mFocusedActivity"
    
  3. 查看日志

    adb logcat    //查看所有日志
    
  4. 安装软件

    adb install xxx.apk 
    adb install -r xxx.apk //覆盖安装,保留数据和缓存文件,重新安装,升级
    adb install -r -t xxx.apk
    adb shell pm install +apk存放路径   
    //安装应用(目标 apk 存放于PC端,用 adb install 安装   
    //目标 apk 存放于Android设备上,用 pm install 安装)
    

  1. 卸载

    adb uninstall xxx.app
    adb uninstall -k xxx.app //保留数据卸载,卸载app但保留数据和缓存文件
    

卸载WPS

  1. push

    adb push 本地文件名 手机端路径
    

  1. pull

    adb pull 手机端路径 本地文件路径
    


  1. 查看所有APP

    adb shell pm list packages
    adb shell pm list packages -f  //还能显示出路径
    

  1. 截屏

    adb shell screencap /sdcard/screen.png
    

  1. 录屏

    adb shell screenrecord /sdcard/demo.mp4
    
  2. 从电脑路径copy文件到手机

adb push crime.apk  /sdcard/data/data
  1. 清空App数据
adb shell pm clear com.example.packagename 
  1. 向屏幕上输出一些信息
adb shell input text "insert%stext%shere"  //%s表示空格,不能输出中文
  1. 模拟触屏
adb shell input tap 500 1450 //在屏幕上(500,1450)的坐标点上进行一次点击
adb shell input keyevent + 按键事件  // 发送按键事件 例如:adb shell input keyevent KEYCODE_HOME 模拟按下Home键
  1. 模拟滑动屏幕事件
adb shell input swipe 100 500 100 1450 100   //从屏幕坐标(100,500)开始,滑动到(100,1450)结束,整个过程耗时100ms
  1. 查看当前内存占用
adb shell cat /proc/meminfo
  1. 查看CPU和内存占用
adb shell top
  1. 查看耗电情况
//保存到xxx.txt
adb shell dumpsys batterystats > xxx.txt
  1. 查看系统设置的闹钟
adb shell dumpsys alarm 
  1. 文件操作
adb shell ls [-al] 	//文件和文件夹的详细信息
adb shell cd   //进入文件目录
adb shell cat  //查看文件  
adb shell du -sh *  //查看目录下文件大小
  1. Root判断
#代表已经root了,$代表没有root权限
  1. 获取Root权限
adb root
---su root
  1. 连接设备
adb connect + [设备ip] 10.0.0.4:5555
  1. 重启设备
adb reboot
  1. 获取设备连接状态
adb get-state    //device:设备正常连接 , offline:连接出现异常,设备无响应 , unknown:没有连接设备
  1. 查看设备的后台 进程
adb shell ps
  1. 启动一个服务
adb shell am startservice
  1. 发送一个广播
adb shell am broadcast 
  1. 启动一个Activity
adb shell  am start +包名/.Activity (要启动的Activity)     
//启动一个 Activity (-s先停止目标应用,再启动  -w 等待应用完成启动  -a 启动默认浏览器打开一个网页
//adb shell am start -a android.intent.action.VIEW -d http://testerhome.com
adb shell dumpsys activity [] //查看运行的activity
adb shell dumpsys activity services []  //查看运行的service
  1. 列出package的位置
adb shell pm path+包名     //列出对应包名.apk 位置
  1. 列出设备上输入法
adb shell ime list -s 
  1. 获取系统版本
adb shell getprop ro.build.version.release
  1. 获取系统api版本
adb shell getprop ro.build.version.sdk
  1. 获取相关制造商信息
adb shell getprop | grep "model\|version.sdk\|manufacture
r\|hardware\|platform\|revision\|serialno\|product.name\|brand"
  1. 获取系统相关信息
adb shell "cat /system/build.prop | grep "product""
  1. 获取型号
adb -d shell getprop ro.product.model
  1. 厂商
adb -d shell getprop ro.product.brand
  1. 序列号
有两种方式
adb get-serialno
adb shell getprop ro.serialno
  1. 获取MAC地址
adb shell cat /sys/class/net/wlan0/address
  1. 获取内存信息
adb shell cat /proc/meminfo
  1. 存储信息
adb shell df
adb shell df /data  //内部存储信息
  1. 屏幕分辨率
adb shell "dumpsys window | grep mUnrestrictedScreen"
  1. 多个设备选择一个
adb -s 192.168.101.37:5555 shell + 操作
  1. 查看进程
adb shell procrank
  1. 关闭或者杀掉进程
adb shell kill 366
  1. 清除应用数据
adb shell pm clear com.baidu
  1. CP复制文件
//adb shell 进入Android Linux命令中
cp -f system/app/Music/Music.apk /sdcard/Music.apk
  1. 删除文件
//adb shell 进入Android Linux命令中
rm  -r /mnt/sdcard/a.mp3 
//删除文件夹的时候需要加上-r参数 
cd dir 
rm *    删除dir中所有文件
  1. cat 查看文件
cat  /sdcard/test.txt
  1. 查看进程的具体信息
//例如:1460是要查看的进程的PID
cat /proc/1460/maps     //查看进程的文件结构 
cat /proc/1460/status   //查看进程的状态
  1. findstr和grep
//1)cmd下搜索包名为com.android.launcher3的进程 
adb shell ps|findstr /i “com.android.launcher3” 
//2)shell下面搜索 
//先使用adb shell进去,然后使用grep命令过滤 
ps | grep “com.linux.test”