浅谈检测内存泄漏

1、下载MAT(Eclipse Memory Analyzer)工具,windows64位网盘下载地址:http://pan.baidu.com/s/1pLlbOBD,或者通过官网下载:https://www.eclipse.org/mat/downloads.php,下载完毕后解压即可,目录结构如下:

浅谈检测内存泄漏

2.打开DDMS界面:

点击Dump HPROF file(红色框框标记)按钮导出一个hprof后缀的文件androidstudy.androidartstudy05.hprof保存到platform-tools下(放到此目录是为了下一步方便转换文件),我的路径为E:\Android\sdk\platform-tools;

3、由于导出后的文件不能直接被MAT识别,所以需要通过hprof-conv命令转换一下,此命令是Android SDK提供的工具,位于platform-tools下,cmd命令切换到此目录后输入hprof-conv androidstudy.androidartstudy05.hprof androidstudy.androidartstudy05-conv.hprof命令回车,
   会在platform-tools目录下生成一个androidstudy.androidartstudy05-conv.hprof文件,如下图:

4、由于导出后的文件不能直接被MAT识别,所以需要通过hprof-conv命令转换一下,此命令是Android SDK提供的工具,位于platform-tools下,cmd命令切换到此目录后输入hprof-conv androidstudy.androidartstudy05.hprof androidstudy.androidartstudy05-conv.hprof命令回车,

会在platform-tools目录下生成一个androidstudy.androidartstudy05-conv.hprof文件,如下图:

4、由于导出后的文件不能直接被MAT识别,所以需要通过hprof-conv命令转换一下,此命令是Android SDK提供的工具,位于platform-tools下,cmd命令切换到此目录后输入hprof-conv androidstudy.androidartstudy05.hprof androidstudy.androidartstudy05-conv.hprof命令回车,
   会在platform-tools目录下生成一个androidstudy.androidartstudy05-conv.hprof文件,如下图:
4、由于导出后的文件不能直接被MAT识别,所以需要通过hprof-conv命令转换一下,此命令是Android SDK提供的工具,位于platform-tools下,cmd命令切换到此目录后输入hprof-conv androidstudy.androidartstudy05.hprof androidstudy.androidartstudy05-conv.hprof命令回车,
   会在platform-tools目录下生成一个androidstudy.androidartstudy05-conv.hprof文件,如下图:
5.双击mat工具中的MemoryAnalyer.exe并点击左上角“File >>>Open file”导入转换后的hprof文件

6.点击Overview和Histogram等查看内存占用情况

参考链接

https://www.cnblogs.com/baiyi168/p/5684251.html

https://www.jianshu.com/p/0125e1bf0531