Android中使用MAT、GIMP工具分析内存异常占用

我们在用MAT(Memory Analyzer Tool)分析Android内存时,会发现大量的bitmap对象占了内存使用。但是很难定位究竟是哪张图片占用了内存,这里介绍一种查看bitmap的方法。

MAT、GIMP下载

MAT
http://www.eclipse.org/mat/downloads.php
GIMP
http://rj.baidu.com/soft/detail/16945.html?ald

操作步骤

1、AndroidStudio Monitors Memory点击Dump java Heap按钮

Android中使用MAT、GIMP工具分析内存异常占用

点击Dump java Heap按钮后,在对应工程captures目录下会生成一个 xxx.hprof文件

2、转化xxx.hprof文件

Android中使用MAT、GIMP工具分析内存异常占用

hprof-conv xxx.hprof yyy.hprof

3、MAT打开 yyy.hprof 并点击histogram

Android中使用MAT、GIMP工具分析内存异常占用

4、右键byte[]选择ListObjects——>with incoming references

Android中使用MAT、GIMP工具分析内存异常占用

Android中使用MAT、GIMP工具分析内存异常占用

5、在上图列表中右键byte[]——>Copy——>Save Value to File 并命名为xxx.data

6、GIMP打开xxx.data

Android中使用MAT、GIMP工具分析内存异常占用

Android中使用MAT、GIMP工具分析内存异常占用

android studio 3.1.2android monitorandroid profiler取代了

可通过以下方式生成 xxx.hprof

使用AndroidStudio提供的Android Profiler工具和mat进行内存泄漏分析

= THE END =

文章首发于公众号”CODING技术小馆“,如果文章对您有帮助,欢迎关注我的公众号。
文章首发于公众号”CODING技术小馆“,如果文章对您有帮助,欢迎关注我的公众号。
文章首发于公众号”CODING技术小馆“,如果文章对您有帮助,欢迎关注我的公众号。

上一篇:一文详解 HTTP 协议


下一篇:Android Q 适配指南