要分析内存泄漏,首先要了解内存使用情况,这就需要专门的工具来协助。首先要产生内存使用情况的文件(.hprof),其次用工具(MAT)来分析即可。
android studio 和eclipse都可以 产生 app内存使用情况的文件。android studio没找到视图在哪儿,这里用eclipse来生成。
步骤:
1:首先确保手机获得了root权限 或者准备好一个较好的模拟器。推荐Genimotion.
2:将app 安装后 在设备视图中选中 进程,按照如下步骤生成 xx.hprof文件
3:下载 MAT开源工具来分析
http://www.eclipse.org/mat/downloads.php
4:下载完成后打开 MAT,导入x.hprof文件
4.1 : 如果导入过程中遇到错误Error opening heap dump,解决如下
The hprof file you get from Android has android specific format. You should convert hprof file take from Android OS into standard hprof format.
For this you can use hprof-conv tool that is located at AndrodiSDK/tools/hprof-conv.
// 用android sdk里的工具转换一下文件即可。
hprof-conv 源文件 目标文件
5:选择File --> open head dump导入后 ,分析即可。