目录

  • 一、dumpsys命令介绍

    • 1.命令介绍
    • 2.服务查询和介绍
  • 二、核心服务信息查询
    • 1.package包信息查询
    • 2.activity信息查询
    • 3.window信息查询
  • 三、实现自定义服务dumpsys信息查询

一、dumpsys命令介绍

1.命令介绍

dumpsys是一种重要的调试安卓系统的工具,通过它可以得知你想知道的系统服务的一些信息,如输入dumpsys cpuinfo就可以得到当前CPU的使用信息。
命令格式: adb shell dumpsys [system serbices]

2.服务信息查询和介绍

常用的dumpsys指令如下所示:

 adb shell dumpsys -h                            查询指令帮手adb shell dumpsys                             查询系统中所有的服务信息,信息太多,一般不这么用adb shell dumpsys -l                          查询支持dumpsys的系统服务列表adb shell dumpsys [service] --help                某服务查询指令使用帮助adb shell dumpsys [service] [cmd]                查询某服务的相关信息

二、核心服务信息查询

查询dumpsys指令使用帮助:adb shell dumpsys --help

C:\Users\uluxy181> adb shell dumpsys --help
usage: dumpsysTo dump all services.
or:dumpsys [-t TIMEOUT] [--priority LEVEL] [--pid] [--help | -l | --skip SERVICES | SERVICE [ARGS]]--help: shows this help-l: only list services, do not dump them-t TIMEOUT_SEC: TIMEOUT to use in seconds instead of default 10 seconds-T TIMEOUT_MS: TIMEOUT to use in milliseconds instead of default 10 seconds--pid: dump PID instead of usual dump--proto: filter services that support dumping data in proto format. Dumpswill be in proto format.--priority LEVEL: filter services based on specified priorityLEVEL must be one of CRITICAL | HIGH | NORMAL--skip SERVICES: dumps all services but SERVICES (comma-separated list)SERVICE [ARGS]: dumps only service SERVICE, optionally passing ARGS to it`

1.package包信息查询

adb shell dumpsys package --help 输入指令后,指导信息如下所示
C:\Users\uluxy181> adb shell dumpsys package -h
Package manager dump options:[-h] [-f] [--checkin] [--all-components] [cmd] ...--checkin: dump for a checkin-f: print details of intent filters-h: print this help--all-components: include all component names in package dumpcmd may be one of:apex: list active APEXes and APEX session statel[ibraries]: list known shared librariesf[eatures]: list device featuresk[eysets]: print known keysetsr[esolvers] [activity|service|receiver|content]: dump intent resolversperm[issions]: dump permissionspermission [name ...]: dump declaration and use of given permissionpref[erred]: print preferred package settingspreferred-xml [--full]: print preferred package settings as xmlprov[iders]: dump content providersp[ackages]: dump installed packagesq[ueries]: dump app queryability calculationss[hared-users]: dump shared user IDsm[essages]: print collected runtime messagesv[erifiers]: print package verifier infod[omain-preferred-apps]: print domains preferred appsi[ntent-filter-verifiers]|ifv: print intent filter verifier infoversion: print database version infowrite: write current settings nowinstalls: details about install sessionscheck-permission <permission> <package> [<user>]: does pkg hold perm?dexopt: dump dexopt statecompiler-stats: dump compiler statisticsservice-permissions: dump permissions required by services<package.name>: info about given package

2.activity信息查询

adb shell dumpsys activity --help 输入指令后,指导信息如下所示:

C:\Users\uluxy181> adb shell dumpsys activity -h
Activity manager dump options:[-a] [-c] [-p PACKAGE] [-h] [WHAT] ...WHAT may be one of:a[ctivities]: activity stack stater[recents]: recent activities stateb[roadcasts] [PACKAGE_NAME] [history [-s]]: broadcast statebroadcast-stats [PACKAGE_NAME]: aggregated broadcast statisticsi[ntents] [PACKAGE_NAME]: pending intent statep[rocesses] [PACKAGE_NAME]: process stateo[om]: out of memory managementperm[issions]: URI permission grant stateprov[iders] [COMP_SPEC ...]: content provider stateprovider [COMP_SPEC]: provider client-side states[ervices] [COMP_SPEC ...]: service stateallowed-associations: current package association restrictionsas[sociations]: tracked app associationsexit-info [PACKAGE_NAME]: historical process exit informationlmk: stats on low memory killerlru: raw LRU process listbinder-proxies: stats on binder objects and IPCssettings: currently applied config settingsservice [COMP_SPEC]: service client-side statepackage [PACKAGE_NAME]: all state related to given packageall: dump all activitiestop: dump the top activityWHAT may also be a COMP_SPEC to dump activities.COMP_SPEC may be a component name (com.foo/.myApp),a partial substring in a component name, ahex object identifier.-a: include all available server state.-c: include client state.-p: limit output to given package.--checkin: output checkin format, resetting data.--C: output checkin format, not resetting data.--proto: output dump in protocol buffer format.--autofill: dump just the autofill-related state of an activity

3.window信息查询

adb shell dumpsys window -h

C:\Users\uluxy181> adb shell dumpsys window -h
Window manager dump options:[-a] [-h] [cmd] ...cmd may be one of:l[astanr]: last ANR informationp[policy]: policy statea[animator]: animator states[essions]: active sessionssurfaces: active surfaces (debugging enabled only)d[isplays]: active display contentst[okens]: token listw[indows]: window listtrace: print trace status and write Winscope trace to filecmd may also be a NAME to dump windows.  NAME maybe a partial substring in a window name, aWindow hex object identifier, or"all" for all windows, or"visible" for the visible windows."visible-apps" for the visible app windows.-a: include all available server state.--proto: output dump in protocol buffer format.

三、实现自定义服务dumpsys信息查询

如果期望自己的功能服务也能通过dumpsys指令打印关键信息,方法如下:
1、需要实现的服务必须继承binder;
2、重写dump()方法,在方法里加入想要打印的信息;
3、将这个服务对象添加到ServiceManager里;

        ServiceManager.addService("yfve_excpert_service", new TestDumpsys());}private static final class TestDumpsys extends Binder {void TestDumpsys() {LogUtil.i(TAG, "TestDumpsys ");}@Overrideprotected void dump(FileDescriptor fd, PrintWriter fout, String[] args) {//super.dump(fd, fout, args);fout.println("*dump excpert TestDumpsys  service*");}}

按上面步骤加完服务所需要打印的内容,解决掉遇到selinux问题。运行服务后,通过dumpsys - l指令可以查看是否添加完成。我着demo里添加的dumpsys服务名字叫yfve_excpert_service;

C:\Users\uluxy181> adb shell dumpsys -l...webviewupdatewifiwifinl80211wifip2pwifiscannerwindowyfve_core_serviceyfve_excpert_service
C:\Users\uluxy181>

Android dumpsys使用相关推荐

  1. Android dumpsys命令详细使用

    Android dumpsys命令详细使用 一.dumpsys命令介绍 1.命令说明 Dumpsys用户系统诊断,它运行在设备上,并提供系统服务状态信息 命令格式: adb shell dumpsys ...

  2. android dumpsys 分析,Android开发调试性能分析工具:dumpsys

    dumpsys可以用来查看android系统运行过程中的信息状态,如CPU.内存使用.... 例1:查看dumpsys的"子命令" adbshell dumpsys | grep ...

  3. android dumpsys命令使用

    原址 一. dumpsys命令 1.1 服务列表 不同的Android系统版本支持的命令有所不同,可通过下面命令查看当前手机所支持的dump服务,先进入adb shell,再执行如下命令:dumpsy ...

  4. Android dumpsys常用命令

    adb shell dumpsys,默认打印出当前系统所有service信息,在后面可加上具体的服务名 需要列出当前运行的服务,可运行: adb shell dumpsys | findstr DUM ...

  5. Android dumpsys input详解

    (用华为P30带你看安卓) 简介:华为P30,Android 9.0(API 28) 如果你在从事安卓的开发,如果你苦于看不懂android 的输入逻辑,如果你想找到更好Android 调试工具,那么 ...

  6. android dumpsys 分析,Android内存分析工具-dumpsys meminfo

    首先来看怎么使用 执行如下shell adb shell dumpsys meminfo [包名] 假如我们要跟踪的应用包名为com.laomou.memtest 在打开应用操作一段时间后,返回到桌面 ...

  7. Android dumpsys SurfaceFlinger分析

    对于分析一些显示问题,我们需要使用adb shell dumpsys SurfaceFlinger命令来获取SurfaceFlinger的dump信息,因此这里来详细讲解下SurfaceFlinger ...

  8. android dumpsys 命令,Android dumpsys命令的使用方法

    0x01 查看dumpsys支持哪些服务: adb shell dumpsys -l 列出dumpsys支持的服务名字,例如(仅列出几个,全部服务有100多个) $ adb shell dumpsys ...

  9. android dumpsys 命令,Android Shell命令dumpsys

    dumpsys命令可以显示手机中所有应用程序的信息,并且也会给出现在手机的状态. 直接执行adb shell dumpsys会显示以下所有信息. SurfaceFlinger, accessibili ...

最新文章

  1. AngularJS之Filter(二)
  2. Python 图片亮度
  3. A标签使用javascript:伪协议
  4. 实录分享 | 计算未来轻沙龙:大规模数据存储与挖掘(PPT下载)
  5. linux 粘贴内容命令行,Linux下命令行中的复制和粘贴
  6. 转载 Net多线程编程—System.Threading.Tasks.Parallel
  7. ps批量操作图片尺寸(一键执行) - 教程篇
  8. HGsoft-downloader
  9. shell调用hive客户端导致nohup后台进程stopped
  10. Jquery 根据value值设置下拉列表(select)默认选中项
  11. packagereference 里面的资产是怎么回事?
  12. 最新信恒第四方支付系统源码+服务器直接打包
  13. 日本IT公司工作体验
  14. 股票价格中后取复权的计算
  15. visio付款流程图_职场人士常用的3款超好用流程图软件!
  16. php 风水起名网站源代码_202002年PHP开运网运势测算网站源码 鼠年风水起名/八字算命/算财运姻缘/易经周易/占卜+安装说明...
  17. uva 11134 Fabled Rooks
  18. 软件项目管理文档模板目录
  19. Linux学习2.0(非markdown编辑)
  20. 让div在body中居中显示

热门文章

  1. DFP 算法 Matlab 实现
  2. Windows系统下创建系统还原点 和 进行系统还原
  3. 学习路之gis--百度离线地图下载制作
  4. 实验-流动墨迹速度感知实验
  5. js截屏以及three.js场景截屏
  6. HBase 的特点是什么
  7. 【MBD】使用28335测试ePWM
  8. Android学习之图片切换
  9. Autojs教程--4.如何手机后台运行脚本(七猫小说举例) (下)
  10. 高维度理论为什么不能存在,看看此文就懂了