起先是为了写一个按键精灵的插件,慢慢延伸到去研究了安卓系统的内存溢出,然后才发现各种各样的问题
首先安卓的内存判断中有两个不同的值,一个是用dumpsys meminfo的方式,测试后发现它是用来查看活动应用的内存,而安卓中存在一些死的进程,特别是用按键精灵进行kill后导致的死进程,需要进行过滤和删除,因此引出了我对手机procrank的需求,由于有些手机做了系统的改版,把这部分功能删除掉了,导致了我需要去额外安装这些文件,查过谷歌或者百度的人都知道,我们需要三个文件
分别是procrank,procmem,libpagemap.so,而这三个文件你就不要想着去谷歌找了,我找了很久都没有找到,最简单的办法就是从有这些文件的手机中获取出来,获取的方法也不难,需要研究下adb win。这个文件在谷歌上面是肯定能找到下载的。我这里就不详细说明了
一般前两个文件放在/system/xbin/中 后面的文件在/system/lib/中
通过以下命令将文件暂时保存到D盘
adb shell pull /system/xbin/procrank D:/
adb shell pull /system/xbin/procmem D:/
adb shell pull /system/lib/libpagemap.so D:/
然后再通过push命令就可以把文件安装到手机中,但是这里会遇到一个问题先说明下,
adb push cannot create /system/xbin/ read-only file system
系统会有类似以上的提示
解决方法还好有找到,先登录到手机
adb shell
mount-o rw,remount-t yaffs2/dev/block/mtdblock3/system
然后再执行
adb push procrank /system/xbin
adb push procmem /system/xbin
adb push libpagemap.so /system/lib
然后赋予赋权:
adb shell chmod 6755 /system/xbin/procrank
adb shell chmod 6755 /system/xbin/procmem
adb shell chmod 6755 /system/lib/libpagemap.so
后面就可以用adb shell procrank命令了,该命令可以查看PID VSS RSS PSS USS所有数据。
版权属于:
转载时必须以链接形式注明原始出处及本声明。