dumpsys
「dumpsys是Android系统中的一个可执行文件」,主要用于将当前Android系统的一些信息(如Activity、package等)输出(dump出来)。对于分析Android设备问题、查看运行状态、使用情况等十分有效。
dumpsys命令的使用方法是通过adb shell进入设备的shell环境,执行dumpsys命令。例如,执行adb shell dumpsys -l可以查看当前Android系统所有运行的服务。为了更具体地查看某个服务的信息,可以指定服务名称,如adb shell dumpsys activity可以查看与Activity相关的信息。
在Android系统中,因为每个service都实现了dump方法。当执行dumpsys命令时,系统会通过ServiceManager获取对应的service信息,并执行该service的dump函数,从而获取并输出相关信息。
dumpsys常用命令
- 「dumpsys activity」 //查询AMS服务相关信息,相当于ActivityManagerService.dump()
- dumpsys activity intents:查询系统所有待处理intent信息;
- dumpsys activity broadcasts:可查询所有注册广播接收者、前台广播、后台广播信息;
- dumpsys activity providers:查询系统组件provider相关信息;
- dumpsys activity activitys:查询系统组件activity相关信息;
- dumpsys activity services:查询系统组件service相关信息;
- 「dumpsys window」 //查询WMS服务相关信息
- dumpsys window:可获取当前界面所在的应用,可看到获取焦点的window和应用;
- 「dumpsys cpuinfo」 //查询CPU情况 -dumpsys cpuinfo:获取当前cpu使用情况,也可已使用top命令;
- 「dumpsys meminfo」 //查询内存情况
- dumpsys meminfo + 包名:查看应用内存占用信息;
- dumpsys meminfo --oom:查看应用内存层级;
- 「dumpsys package」 //查询PMS相关信息
- dumpsys package + 包名:查看应用相关信息;
- dumpsys package + 包名 |grep version:查看应用的版本信息;
- dumpsys package + 包名 |grep apk:查看应用安装路径信息;
- 「dumpsys gfxinfo」 //查询图像相关信息
- dumpsys gfxinfo+ 包名:查看应用的丢帧情况;