ADB命令

1.查看内存

内存占用
adb shell dumpsys meminfo
内存信息
adb shell cat /proc/meminfo

2.查看当前打开的应用的包名

adb shell dumpsys window | findstr mCurrentFocus 

3.通过adb启动对应的Activity

adb shell am start -n 包名/启动页面(com.xxx.SplashActivity)
//打开系统设置界面
adb shell am start -n com.android.settings/com.android.settings.Settings
//打开开发者选项
adb shell am start -a com.android.settings.APPLICATION_DEVELOPMENT_SETTINGS
//打开WiFi设置
adb shell am start -a android.settings.WIRELESS_SETTINGS
  1. Android 异常日志 用来排查闪退问题
adb logcat -s AndroidRuntime 

5.截手机屏幕

adb shell screencap -p /sdcard/test.png

6.查看Android系统的进程状态命令

adb shell ps -A 

7.查看已安装的包

adb shell pm list packages

8.查看危险权限列表

adb shell pm list permissions -g -d

9.列出第三方应用包名所在位置

adb shell pm list packages -f -3

10.列出系统包名所在位置

adb shell pm list packages -f -s

11.列出某个应用所有位置

adb shell pm path com.xxx.xxx.xxx

12.删除应用的数据

adb shell pm clear com.xxx.xxx.xxx

13.列出设备硬件特点

adb shell pm list features

14.Activity的栈信息

adb shell dumpsys activity

15.广播信息

adb shell dumpsys activity broadcasts

16.服务信息

adb shell dumpsys activity services

17.省电信息

adb shell dumpsys power

18.电池信息

adb shell dumpsys battery

19.查看文件内容

adb shell dumpsys /data/anr/traces.txt

20.清理系统事件信息日志

adb logcat -c -b events

21.依次类推清理手机内所有日志的命令

adb logcat -c -b main -b events -b radio -b system

22.查看屏幕分辨率

adb shell wm size

23.查看屏幕密度

adb shell wm density

24.查看系统版本

adb shell getprop ro.build.version.release

25.查看CPU信息

adb shell cat /proc/cpuinfo

26.查看CPU架构

adb shell getprop ro.product.cpu.abi

27.查看手机型号

adb shell getprop ro.product.model
  1. adb [-d|-e|-s ]
-d 指定当前通过USB连接的Android设备为指定目标
例如:adb -d shell wm size
-e 指定唯一运行的模拟器为指定目标
-s 指定相应serialNumber 的设备为命令目标

29.adb install [-rtsdg]

-r 覆盖安装
-t 允许安装 AndroidManifest.xml 里 application 指定 android:testOnly="true" 的应用
-s 安装到sdcard上
-d 允许降级覆盖安装
-g 授予所有运行时权限
  1. adb uninstall [-k]
-k 参数表示卸载应用但保留数据和日志记录

31.强制停止应用

adb shell am force-stop 

32.查看前台Activity

adb shell dumpsys activity activities | grep ResumedActivity

33.重启系统

adb reboot

34.日志相关

adb logcat --help  //可以查看logcat帮助信息
命令格式:adb logcat [选项] [过滤项]  //选项和过滤项都是可选的
> 将日志输出到指定文件,如 adb logcat > D:/test.txt //日志输出到D盘的test.txt中
-s 输出指定标签内容,设置默认的过滤器, 如 我们想要输出 "System.out" 标签的信息, 就可以使用 adb logcat -s System.out 命令

adb logcat -c //清除以前的日志信息
adb logcat -d //输出缓存日志,之后退出命令, 不会进行阻塞
adb logcat -t 5 //输出最近的5行日志, 并且不会阻塞

过滤固定字符串:

adb logcat | grep logtag
adb logcat | grep -i logtag  //忽略大小写。
adb logcat | grep logtag  > ~/result.log  //将过滤后的日志输出到文件
adb logcat | grep --color=auto -i logtag  //设置匹配字符串颜色。
adb logcat | grep "^..Activity"  //使用正则表达式匹配

35.与应用交互,主要使用am 命令

start [options]   //启动Activity
startservice [options]  //启动Service
broadcast [options]  //发送广播
force-stop  //停止packagename相关的进程

INTENT 参数与 Android 代码里的 Intent 参数相对应

-a 指定action
-c 指定category
-n 指定完整component名,用于明确指定启动哪个Activity

INTENT 里面还可以带参数
--esn  //null值,只有key
--es   // key和value String类型
----ez   //boolean值
--ei   //integer值
--el   //long值
--ef   //float值
--eu    //URI
--ecn   //component name
--eia  [, [,
adb shell am start -n com.gao.test/.MainActivity --es "name" "jerry" 
//表示调起MainActivity并传给它string键值参数 name jerry


adb shell am startservice [options] 
adb shell am startservice -n com.gao.test/.myserice.NotifyService //启动服务

adb shell am broadcast [options] 
adb shell am broadcast -a android.intent.action.BOOT_COMPLETED
//向所有组件发送广播
adb shell am broadcast -a android.intent.action.BOOT_COMPLETED -n com.gao.test/.NotifiyReceiver //只向com.gao.test/.NotifiyReceiver发送广播android.intent.action.BOOT_COMPLETED

36.adb操作应用权限

adb shell pm grant  
//向应用授予,应用中声明的权限
如:adb -d shell pm grant com.gao.test android.permission.INTERNET

adb shell pm revoke   //取消应用权限

37.模拟按键/输入

input []  [...]
source:
      mouse
      keyboard
      joystick
      touchnavigation
      touchpad
      trackball
      stylus
      dpad
      gesture
      touchscreen
      gamepad

comman:
      text  (Default: touchscreen)
      keyevent [--longpress]  ... (Default: keyboard)
      tap   (Default: touchscreen)
      swipe     [duration(ms)] (Default: touchscreen)
      press (Default: trackball)
      roll   (Default: trackball)
      
如:模拟点击屏幕x=100 y=200位置
adb shell input tap 100 200

你可能感兴趣的:(ADB命令)