一、 dumpsys命令
1.1 服务列表
不同的Android系统版本支持的命令有所不同,可通过下面命令查看当前手机所支持的dump服务,先进入adb shell,再执行如下命令:dumpsys -l。 这些服务名或许你并看不出其调用的哪个服务,那么这时可以通过下面指令:service list。
表一:
服务名
类名
功能
activityActivityManagerServiceAMS相关信息
packagePackageManagerServicePMS相关信息
windowWindowManagerServiceWMS相关信息
inputInputManagerServiceIMS相关信息
powerPowerManagerServicePMS相关信息
batterystatsBatterystatsService电池统计信息
batteryBatteryService电池信息
alarmAlarmManagerService闹钟信息
dropboxDropboxManagerService调试相关
procstatsProcessStatsService进程统计
cpuinfoCpuBinderCPU
meminfoMemBinder内存
gfxinfoGraphicsBinder图像
dbinfoDbBinder数据库
表二:
服务名
功能
SurfaceFlinger图像相关
appopsapp使用情况
permission权限
processinfo进程服务
batteryproperties电池相关
audio查看声音信息
netstats查看网络统计信息
diskstats查看空间free状态
jobscheduler查看任务计划
wifiwifi信息
diskstats磁盘情况
usagestats用户使用情况
devicestoragemonitor设备信息
。。。。。。
未完待续…
1.2 查询服务
通过下面命令可打印具体某一项服务:dumpsys ,其中便是前面表格中的服务名,比如:
dumpsyscpuinfo//打印一段时间进程的CPU使用百分比排行榜
dumpsysmeminfo-h//查看dump内存的帮助信息
dumpsyspackage//查看指定包的信息
系统服务非常之多,那么接下来将重点说说其中之一:dumpsys activity用法.
二、 Activity
dumpsysactivity[options][cmd]
下面分别说说options和cmd有哪些可选值
2.1 options
options可选值:
-a:dump所有;
-c:dump客户端;
-p [package]:dump指定的包名;
-h:输出帮助信息;
dumpsys activity等价于依次输出下面7条指令:
dumpsys activity intents
dumpsys activity broadcasts
dumpsys activity providers
dumpsys activity services
dumpsys activity recents
dumpsys activity activities
dumpsys activityprocesses
2.2 cmd
cmd可选值
cmd
解释
缩写
activitiesactivity状态a
broadcasts广播b
intentspending intent状态i
processes进程p
oom内存溢出o
servicesService状态s
serviceservice状态(Client端)
providersContentProvider状态prov
providerContentProvider状态(Client端)
associationstracked app associationsas
permissionsURI permission grant stateperm
packagepackage相关信息
all所有的activities信息
recentsrecent activity状态r
toptop activity信息
write将状态持久化到存储区
track-associations使能association tracking
untrack-associations禁止和清空association tracking
cmd:上表加粗项是指直接跟包名,另外services和providers还可以跟组件名;
缩写:基本都是cmd首字母或者前几个字母,用cmd和缩写是等效: dumpsys activity broadcasts dumpsys activity b //等效