美文网首页Android系统
查看Android系统信息的利器dumpsys

查看Android系统信息的利器dumpsys

作者: c4a1d989518e | 来源:发表于2017-03-23 23:35 被阅读107次

    dumpsys是安卓设备中的一个可执行文件,可以通过adb命令启动,可以用来查看Android系统和应用的各种information的。

    查看比如说直接从命令行查看出,电池用量,cpu占用,连得哪个wifi,系统中的进程是怎样的。还可以查看具体哪个APP运行时的Activity,占用内存,有没有内存溢出,还可以查看帧率。这个命令是相当强大。我用mac打开iTerm,然后全屏,敲adb shell dumpsys,纯黑的屏幕上,出现一屏屏的英文,看起来是很赏心悦目的。

    说到安卓的内存溢出,今天跟Android的内存溢出杠了一天,晚上就看到了腾旭bugly微信公众号推送的这篇文章安卓内存优化&总结,干货很多。

    好了,接下来步入正题。说些经常会用到的dumpsys命令,当然这些命令是各取所需,也不可能全部列出,随用随查好了。

    获取cpu的信息

    adb shell dump sys cpuinfo

    获取内存信息

    adb shell dumpsys meminfo

    查看某个应用的内存信息,后面添加包名

    adb shell dumpsys memento PACKAGE_NAME

    获取Activity信息:

    adb shell dumpsys activity

    获取当前界面的UI信息,可以用:

    adb shell dumpsys activity top

    要获取当前界面的Activity:

    adb shell dumpsys activity top | findstr ACTIVITY

    获取package信息:

    adb shell dumpsys package

    获取某个包的信息:

    adb shell dumpsys package PACKAGE_NAME

    获取wifi信息:

    adb shell dumpsys wifi

    可以获取到当前连接的wifi名、搜索到的wifi列表、wifi强度等

    上面举了几个例子,dumpsys还能干什么,可以用

    adb shell dumpsys service list

    来查看。具体能查看什么,可以见这张表

    还有这张

    还有就是要举一个非常非常实用的例子,来举一反三,就是查看Activity的命令。

    cmd又有哪些可选命令?

    cmd的选项是可以缩写的,举个例子

    查看安卓设备上新浪微博的进程

    adb shell dumpsys activity p com.sina.weibo

    注意这里的p是cmd中processes的缩写,不是上面提到的option中的-p,cmd中并不是所有都可以缩写,可以缩写的都在上面的表中列着。

    dumpsys原理

    讲完了用法,就应该在讲一下底层的原理了。dumpsys在Android中是一个可执行cpp文件(cpp文件是用c++编译的),cpp文件的代码不多,我们用dumpsys是要用它的server主要是调用各个java中的方法,调用安卓中的native函数,这些函数里面本身就集成了dump方法。

    dumpsys的部分代码

    用defaultServiceManager调用Android的ServiceManager。然后通过函数checkService来找到具体的service, 并执行该service的dump方法。到了Java中,不同的server又有不同函数的调用,这些函数中包含了dump函数。原文举得例子是查看帧率的命令。到Android的Native层去分析了这些函数,真是不容易。其中也提到了权限的问题,也是很值得注意。

    写完之后,听了个科技新闻,说苹果收购了workflow团队,workflow是一款iOS商店的APP,用于实现手机上的自动化操作,比如想要实现拍照之后,直接上传到网盘。这时候就可以用workflow实现一个工作流,workflow目前已经免费。

    本文引用:

    移动测试基础 android 中 dumpsys 命令使用-xuxu

    dumpsys用法-Gityuan

    dumpsys实现原理-Hly_Coder

    相关文章

      网友评论

        本文标题:查看Android系统信息的利器dumpsys

        本文链接:https://www.haomeiwen.com/subject/gjztottx.html