虽说知道一般性的开发android应用须要注意的问题,但是也有水平參差不齐的情况。特别是维护代码,假设内存占用大,内存溢出严重,又怎么解决呢? -- 通过DDMS把heap抓出来分析
1、打开DDMS
2、选中须要查看的程序,而且点击Update Heap图标
3、查看Heap情况
可是这不过查看一下Heap的使用情况,那假设发现内存占用或者溢出非常严重,动不动就OOM了。通过这个是看不出啥东西的,这个时候就须要把Heap抓出来分析。在UpdateHeap边上另一个button。
点一下,会生成一个文件。随便保存起来(会有点延时。耐心等等喔。我保存到桌面)
7、查看刚刚下载的文件。只是要查看之前我们须要 MAT
8、安装MAT 。步骤基本上网上都有,方法为:eclipse-》help-》Eclipse Marketplace-》选择Memory Analysis 右边的install 然后下一步 下一步安装就可以。
9、.hprof文件转换,由DDMS直接保存的文件不能用MAT查看,会提示格式不对。这个时候要使用sdk带的工具 hprof-conv来进行转换。
C:\Users\Administrator>hprof-conv C:\Users\Administrator\Desktop\test.hprof C:\Users\Administrator\Desktop\hprofed-test.phrof
10、使用MAT打开.hprof文件查看内存使用情况。
至于MAT怎么用 百度或者谷歌还是非常多的,或者等我研究到对android有价值的东西。我会再开一个博文说明的!
转载于:
虽说知道一般性的开发android应用须要注意的问题,但是也有水平參差不齐的情况。特别是维护代码,假设内存占用大,内存溢出严重,又怎么解决呢? -- 通过DDMS把heap抓出来分析
1、打开DDMS
2、选中须要查看的程序,而且点击Update Heap图标
3、查看Heap情况
可是这不过查看一下Heap的使用情况,那假设发现内存占用或者溢出非常严重,动不动就OOM了。通过这个是看不出啥东西的,这个时候就须要把Heap抓出来分析。在UpdateHeap边上另一个button。
点一下,会生成一个文件。随便保存起来(会有点延时。耐心等等喔。我保存到桌面)
7、查看刚刚下载的文件。只是要查看之前我们须要 MAT
8、安装MAT 。步骤基本上网上都有,方法为:eclipse-》help-》Eclipse Marketplace-》选择Memory Analysis 右边的install 然后下一步 下一步安装就可以。
9、.hprof文件转换,由DDMS直接保存的文件不能用MAT查看,会提示格式不对。这个时候要使用sdk带的工具 hprof-conv来进行转换。
C:\Users\Administrator>hprof-conv C:\Users\Administrator\Desktop\test.hprof C:\Users\Administrator\Desktop\hprofed-test.phrof
10、使用MAT打开.hprof文件查看内存使用情况。
至于MAT怎么用 百度或者谷歌还是非常多的,或者等我研究到对android有价值的东西。我会再开一个博文说明的!