获取内存命令:
adb shell top
VSS:Virtual Set Size,虚拟耗用内存
RSS:Resident Set Size,实际使用物理内存
一般需要取上面的两个数据VSS+RSS,定期采集内存数据,然后对内存数据做曲线图,如果发现在长时间使用后,内存处于一个恒定的情况,则没有内存泄露的情况。
采集过程:
1、设置1s钟刷新一次内存数据,然后将内存数据输入到meminfo文件:
adb shell top -d 1 > meminfo,-d是指刷新频率,单位秒,-n是指刷新次数
2、操作APP,持续2个小时,终止步骤1里面的命令;
3、过滤APP的内存信息:adb meminfo | grep 包名
4、将过滤出的两种内存信息:VSS、RSS写入csv文件;
5、将VSS、RSS数据分别做成曲线图;
6、分析数据:如果内存波动范围在10M=10240KB以内,则影响不大,如果波动范围在100M以上了,那么就要分析一下具体原因了。