Android 性能优化 五 性能分析工具dumpsys的使用

时间:2022-11-12 18:56:43

Android提供的dumpsys工具能够用于查看感兴趣的系统服务信息与状态,手机连接电脑后能够直接命令行运行adb shell dumpsys 查看全部支持的Service可是这样输出的太多,能够通过dumpsys | grep "DUMP OF SERVICE" 仅显示基本的Service的信息

一、列出dumpsys全部支持命令

> adb shell
$ dumpsys | grep "DUMP OF SERVICE"

下面是在我个人三星S3手机上的输出信息

C:\Windows\System32>adb shell
shell@m:/ $ dumpsys | grep "DUMP OF SERVICE"
dumpsys | grep "DUMP OF SERVICE"
DUMP OF SERVICE AtCmdFwd:
DUMP OF SERVICE CustomFrequencyManagerService:
DUMP OF SERVICE DirEncryptService:
DUMP OF SERVICE Exynos.HWCService:
DUMP OF SERVICE Exynos.IPService:
DUMP OF SERVICE FMPlayer:
DUMP OF SERVICE LEDService:
DUMP OF SERVICE SecTVOutService:
DUMP OF SERVICE SurfaceFlinger:
DUMP OF SERVICE TvoutService_C:
DUMP OF SERVICE accessibility:
DUMP OF SERVICE account:
DUMP OF SERVICE activity:
DUMP OF SERVICE alarm:
DUMP OF SERVICE android.security.keystore:
DUMP OF SERVICE application_policy:
DUMP OF SERVICE appops:
DUMP OF SERVICE appwidget:
DUMP OF SERVICE audio:
DUMP OF SERVICE backup:
DUMP OF SERVICE battery:
DUMP OF SERVICE batteryinfo:
DUMP OF SERVICE bluetooth_manager:
DUMP OF SERVICE bluetooth_secure_mode_manager:
DUMP OF SERVICE clipboard:
DUMP OF SERVICE clipboardEx:
DUMP OF SERVICE commontime_management:
DUMP OF SERVICE connectivity:
DUMP OF SERVICE container_service:
DUMP OF SERVICE content:
DUMP OF SERVICE country_detector:
DUMP OF SERVICE cpuinfo:
DUMP OF SERVICE dbinfo:
DUMP OF SERVICE device_policy:
DUMP OF SERVICE devicestoragemonitor:
DUMP OF SERVICE diskstats:
DUMP OF SERVICE display:
DUMP OF SERVICE dreams:
DUMP OF SERVICE drm.drmManager:
DUMP OF SERVICE dropbox:
DUMP OF SERVICE edmnativehelper:
DUMP OF SERVICE enterprise_license_policy:
DUMP OF SERVICE enterprise_policy:
DUMP OF SERVICE entropy:
DUMP OF SERVICE gfxinfo:
DUMP OF SERVICE hardware:
DUMP OF SERVICE harmony_eas_service:
DUMP OF SERVICE input:
DUMP OF SERVICE input_method:
DUMP OF SERVICE iphonesubinfo:
DUMP OF SERVICE isms:
DUMP OF SERVICE license_log_service:
DUMP OF SERVICE location:
DUMP OF SERVICE lock_settings:
DUMP OF SERVICE log_manager_service:
DUMP OF SERVICE mdm.remotedesktop:
DUMP OF SERVICE media.audio_flinger:
DUMP OF SERVICE media.audio_policy:
DUMP OF SERVICE media.camera:
DUMP OF SERVICE media.player:
DUMP OF SERVICE meminfo:
DUMP OF SERVICE motion_recognition:
DUMP OF SERVICE mount:
DUMP OF SERVICE multiwindow:
DUMP OF SERVICE netpolicy:
DUMP OF SERVICE netstats:
DUMP OF SERVICE network_management:
DUMP OF SERVICE nfc:
DUMP OF SERVICE nfccontroller:
DUMP OF SERVICE notification:
DUMP OF SERVICE package:
DUMP OF SERVICE permission:
DUMP OF SERVICE phone:
DUMP OF SERVICE phone_restriction_policy:
DUMP OF SERVICE phoneext:
DUMP OF SERVICE power:
DUMP OF SERVICE remoteinjection:
DUMP OF SERVICE samplingprofiler:
DUMP OF SERVICE samsung.smartfaceservice:
DUMP OF SERVICE scheduling_policy:
DUMP OF SERVICE search:
DUMP OF SERVICE sec_analytics:
DUMP OF SERVICE secontroller:
DUMP OF SERVICE sensorservice:
DUMP OF SERVICE serial:
DUMP OF SERVICE servicediscovery:
DUMP OF SERVICE simphonebook:
DUMP OF SERVICE sip:
DUMP OF SERVICE statusbar:
DUMP OF SERVICE telephony.registry:
DUMP OF SERVICE textservices:
DUMP OF SERVICE tvoutservice:
DUMP OF SERVICE uimode:
DUMP OF SERVICE updatelock:
DUMP OF SERVICE usagestats:
DUMP OF SERVICE usb:
DUMP OF SERVICE user:
DUMP OF SERVICE vibrator:
DUMP OF SERVICE voip:
DUMP OF SERVICE wallpaper:
DUMP OF SERVICE wfd:
DUMP OF SERVICE wifi:
DUMP OF SERVICE wifi_policy:
DUMP OF SERVICE wifip2p:
DUMP OF SERVICE window:

二、详细命令怎样查看帮助

从上面能够看出Service许多。“DUMP OF SERVICE”keyword后面的单词都能够直接通过 dumpsys + 单词 查看相关信息,详细每个怎样使用有一种通用的查看帮助的办法。

查看每个命令的使用帮助。下面以meminfo 为例演示:
shell@m:/ $ dumpsys meminfo -h
dumpsys meminfo -h
meminfo dump options: [-a] [--oom] [process]
-a: include all available information for each process.
--oom: only show processes organized by oom adj.
If [process] is specified it can be the name or
pid of a specific process to dump.

三、一些关键命令解释

名字 功能
account  显示accounts信息
activity  显示全部的activities的信息
cpuinfo 显示CPU信息
window 显示键盘。窗体和它们的关系
wifi  显示wifi信息
batteryinfo $package_name 电量信息及CPU 使用时长
package packagename 获取安装包信息
usagestats 每一个界面启动的时间
statusbar 显示状态栏相关的信息
meminfo
内存信息(meminfo $package_name or $pid 
使用程序的包名或者进程id显示内存信息)
diskstats  磁盘相关信息
battery  电池信息
alarm 显示Alarm信息
   

    dumpsys statusbar | grep notification=Notification 


四、參考资料

Dumpsys (官方文档)

How to discover memory usage of my application in Android

android中dumpsys函数介绍与使用 (代码分析)




很多其它优化相关的文章详见:《Android
基础学习文章汇总
》 第三部分 性能优化



Android 性能优化 五 性能分析工具dumpsys的使用的更多相关文章

  1. mysql性能优化-慢查询分析、优化索引和配置 (慢查询日志,explain,profile)

    mysql性能优化-慢查询分析.优化索引和配置 (慢查询日志,explain,profile) 一.优化概述 二.查询与索引优化分析 1性能瓶颈定位 Show命令 慢查询日志 explain分析查询 ...

  2. redis性能优化、内存分析及优化

    redis性能优化.内存分析及优化 1.优化网络延时 2.警惕执行时间长的操作 3.优化数据结构.使用正确的算法 4.考虑操作系统和硬件是否影响性能 5.考虑持久化带来的开销 5.1 RDB 全量持久 ...

  3. oracle性能优化之awr分析

    oracle性能优化之awr分析 作者:bingjava 最近某证券公司系统在业务期间系统运行缓慢,初步排查怀疑是数据库存在性能问题,因此导出了oracle的awr报告进行分析,在此进行记录. 导致系 ...

  4. MySQL性能优化(五):分表

    原文:MySQL性能优化(五):分表 版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明. 本文链接:https://blog.csdn.net/vbi ...

  5. MongoDB 性能优化五个简单步骤

    MongoDB 一直是最流行的 NoSQL,而根据 DB-Engines Ranking 最新的排行,时下 MongoDB 已经击败 PostgreSQL 跃居数据库总排行的第四位,仅次于 Oracl ...

  6. mysql性能优化-慢查询分析、优化索引和配置

    一.优化概述 二.查询与索引优化分析 1性能瓶颈定位 Show命令 慢查询日志 explain分析查询 profiling分析查询 2索引及查询优化 三.配置优化 1)      max_connec ...

  7. [转]mysql性能优化-慢查询分析、优化索引和配置

    一. 优化概述 MySQL数据库是常见的两个瓶颈是CPU和I/O的瓶颈,CPU在饱和的时候一般发生在数据装入内存或从磁盘上读取数据时候.磁盘I/O瓶颈发生在装入数据远大于内存容量的时候,如果应用分布在 ...

  8. mysql性能优化-慢查询分析、优化索引和配置【转】

    一.优化概述 二.查询与索引优化分析 1性能瓶颈定位 Show命令 慢查询日志 explain分析查询 profiling分析查询 2索引及查询优化 三.配置优化 1)      max_connec ...

  9. Java性能优化的9大工具

    在这篇文章中,我会带着大家一起看一下9个可以帮助我们优化Java性能的工具.有一些我们已经在IDR Solutions中使用了,而另外一些有可能在个人项目中使用. NetBeans Profiler ...

随机推荐

  1. 为什么要使用Mac系统?

    1.键盘手感,电脑外形设计轻薄,舒适,金属感比较舒服: 2.Mac炫酷方便的手势操作: 3.Mission Control的多桌面操作,方便切换工作: 4.软件安装卸载方便(相比Windows): 5 ...

  2. max virtual memory areas vm.max_map_count [65530] likely too low, increase to at least [262144]

    sh- /etc/sysctl.conf vm.max_map_count = #在/etc/sysctl.conf追加上面一条 #并执行命令: sysctl -p

  3. BestCoder Round #74 (div.2)

    组合 1001 LCP Array 第一题就小难,出题的好像是浙大的大牛? 找到一个规律:a[i] = x, s[i..i+x]都想同.a[i] = a[i+1] + 1 (a[i] > 0), ...

  4. Zynq学习笔记(1)

    做硬件的第一个实例,一般当然是LED点灯啦~ 硬件:ZedBoard 软件:ISE 14.7 1.新建工程 2.选择平台 3.新建完成后,输入如下代码: `timescale 1ns / 1ps // ...

  5. Viewpager图片自动轮播,网络图片加载,图片自动刷新

    package com.teffy.viewpager; import java.util.ArrayList; import java.util.concurrent.Executors; impo ...

  6. windows防火墙无法启动,服务不存在

    系统的防火墙无法启动,系统服务里面也没有防火墙的服务,用下面第一种方法,导 入注册表,重启服务器,在服务里面有防火墙的服务了,然后启动就好了,需要重新配置防火墙 在控制面板中启动防火墙的时候提示无法识 ...

  7. SDUT2157——Greatest Number(STL二分查找)

    Greatest Number 题目描述Saya likes math, because she think math can make her cleverer.One day, Kudo invi ...

  8. nodeJS之URL

    前面的话 在HTTP部分,详细介绍了URL的相关知识.而nodejs中的url模块提供了一些实用函数,用于URL处理与解析.本文将详细介绍nodeJS中的URL URL对象 解析 URL 对象有以下内 ...

  9. go 使用 c接口

    在使用go语言时, 有时为了方便可以直接调用c语言的接口与库, 不需要重复编写. 那就来说说在go语言里面如何调用c的接口 首先编写好c语言的源文件与头文件,这里举一个简单的例子,实现一个字符串大小写 ...

  10. 【C#】C#线程_混合线程的同步构造

    目录结构: contents structure [+] 一个简单的混合锁 FCL中的混合锁 ManualResetEventSlim类和SemaphoreSlim类 Monitor类和同步块 Rea ...