• 10.7 使用Dumpsys命令分析系统状态" level="2">10.7 使用Dumpsys命令分析系统状态

    10.7 使用Dumpsys命令分析系统状态" class="reference-link">10.7 使用Dumpsys命令分析系统状态

    使用Dumpsys命令可以列出Android系统相关的信息和服务状态。Dumpsys命令的功能非常强大,可使用的参数配置也非常多。关于Dumpsys的官方信息可以从如下所示的网址来获取。

    1. https://source.android.com/devices/input/dumpsys.html

    Dumpsys所支持的命令非常多,参数大致列举如下所示。

    1. SurfaceFlinger, accessibility, account, activity, alarm, appwidget, audio, backup, battery, batteryinfo, bluetooth, bluetooth_a2dp, clipboard, connectivity, content, cpuinfo, device_policy, devicestoragemonitor, diskstats, dropbox, entropy, hardware, hdmi, input_method, iphonesubinfo, isms, location, media.audio_flinger, media.audio_policy, media.camera, media. player, meminfo, mount, netstat, network_management, notification, package,permission, phone, power, search, sensor, simphonebook, statusbar, telephony.registry, throttle, uimode, usagestats, vibrator, wallpaper, wifi, window

    使用Dumpsys命令时,只需要输入“adb shell dumpsys +以上参数”即可。例如使用如下所示的命令来获取Activity栈的详细信息。

    1. adb shell dumpsys activity

    下面的列表中,总结了一些常用的Dumpsys参数。

    activity 显示所有的Activity栈的信息
    meminfo 内存信息
    battery 电池信息
    package 包信息
    wifi 显示Wi-Fi信息
    alarm 显示alarm信息
    procstats 显示内存状态

    配合Linux下的shell命令,如“grep”、“find”等,可以让Dumpsys命令发挥非常强大的作用。这进行性能优化、Bug分析时是非常有用的。

    性能优化是一个非常具有挑战性的工作,上面列举了很多分析内存、优化内存的方法,但真正的优化工作远不止这么简单。这里只是列举了一些入门的方法,而要进行完美的内存优化、内存分析绝非一日之功,需要开发者有深厚的技术功底和耐心。