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

1.eclipse mat插件的安装

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


2.eclipse 打开mat,并导入\导出的文件 

file->open file 选择即可

3.Android studio export heap dump

进入Android Monitor视图 
将光标定位到Android Studio的左下角,然后如下图所示弹出一个列表,选中“Android Monitor”


生成hprof文件

点击“Memory“Tab,进入内存分析的部分,然后点击”dump java heap for selected client”按钮,如下图所示:


然后主工作区就显示一个与下图类似的页面 

 

导出hprof文件 
再次将光标定位到Android Studio的右下角,这次选择”Captures“,在导出的hprof文件上右键单击并选择”Export to Stand .hprof“,就可以将导出的hprof文件进行分析了。


4.OQL查找Activity内存泄露


select * from instanceof android.app.Activity


再右键选择Path to GCRoots


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

leak canary给出了解决文案


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值