1、procrank
执行procrank前需要先让终端获取到root权限
procrank [ -W ] [ -v | -r | -p | -u | -h ]
常用指令说明:
-v:按照 VSS 排序
-r:按照 RSS 排序
-p:按照 PSS 排序
-u:按照 USS 排序
-R:转换为递增[递减]方式排序
-w:只显示 working set 的统计计数
-W:重置 working set 的统计计数
-h:帮助
按照 VSS 降序排列输出内存快照:procrank –v
查看指定进程的内存占用状态,命令格式如下:procrank | grep [cmdline | PID]
通过跟踪内存的占用状态,进而分析进程中是否存在内存泄露场景。使用编写脚本的方式,连续输出进
程的内存快照,通过对比 USS 段,可以了解到此进程是否有内存泄露。
示例:输出进程名为 com.android.systemui 的应用内存占用状态,查看是否有泄露:
#!/bin/bash
while true;do
adb shell procrank | grep “com.android.systemui”
sleep 1
done
通过 adb 工具连接到设备后,运行此脚本:./test.sh
2、Dumpsys
查看Dumpsys帮助 dumpsys -help
查看Dumpsys包含服务列表 dumpsys -l
输出指定服务和应有进程的信息 dumpsys meminfo com.and