感觉程序员都不太喜欢文字多的阅读,所以用图表达更简单易懂。
1. 安装
http://download.eclipse.org/mat/1.3/update-site/ 不多说
2. 使用
2.1统计
2.2回收
3. 生成hprof文件,heap的快照
当然也可以android.os.Debug.dumpHprofData()方法手动生成等方法,这里只介绍最简单的最方便的方法。
4. 分析
之后就看到图如下:
4.1使用Histogram
使用表达式来筛选你要的信息
4.2 分析
可以通过右击Open Source File 来查看源码文件
4.3 Dominator Tree
使用Dominator 或着Histogram 通过排序可以发现比较大的Bitmap 或是Byte,我们可以单击右键 选择List Objects –》with incoming reference来查看引用在哪里,
使用with outgoing references 可以查看该对象持有哪些对象
5. 结尾
我们可以通过上面信息进行排序,方便于我们排查内存,泄露位置。
简单Mat使用教程目前就介绍到这了,以后再介绍mat的其他用法。欢迎补充和纠正