android内存泄露

原理:

1、找到引用的实例个数,主要是找activity实例个数;

2、消除掉弱引用,找到不能被GC的强引用;

1.查看hprof

查看package tree view,找到所有的activity,查看实例个数

2、更精细查找MAT

内存快照前后对比,可以比对结果。将1.hprof,2.hprof导出标准的到MAT中

泄露前比泄露后多了两个实例对象

 

3、通过上面的分析,可以得出是谁泄露了

    如果不能通过GC进行回收,那么就确定内存泄露

    a、选择Outgoing reference

    b、排除所有的弱引用


 
 4、内存溢出的常出错误

使用好弱引用

 

猜你喜欢

转载自gdfdfg-tech.iteye.com/blog/2373944