使用AndroidStudio dump heap,再用 Eclipse MAT插件分析内存泄露

时间:2023-12-19 11:58:32

1.eclipse mat插件的安装

Help->Install new software,如下图,一直下一步即可

使用AndroidStudio dump heap,再用 Eclipse MAT插件分析内存泄露

2.AndroidStudio dump heap

使用AndroidStudio dump heap,再用 Eclipse MAT插件分析内存泄露

3.AndroidStudio 点captures查看dump 文件

使用AndroidStudio dump heap,再用 Eclipse MAT插件分析内存泄露

4.导出为标准的dump文件

使用AndroidStudio dump heap,再用 Eclipse MAT插件分析内存泄露

5.eclipse 打开mat,并导入4导出的文件

file->open file 选择即可

使用AndroidStudio dump heap,再用 Eclipse MAT插件分析内存泄露

6.OQL查找Activity内存泄露

使用AndroidStudio dump heap,再用 Eclipse MAT插件分析内存泄露

select * from instanceof android.app.Activity

使用AndroidStudio dump heap,再用 Eclipse MAT插件分析内存泄露

再右键选择Path to GCRoots

使用AndroidStudio dump heap,再用 Eclipse MAT插件分析内存泄露

gc roots 显示android源码一个比较低级的bug导致的泄露,单例引用context。

leak canary给出了解决文案

使用AndroidStudio dump heap,再用 Eclipse MAT插件分析内存泄露