LeakCanary
leakcanary是一个开源项目,一个内存泄露自动检测工具,是著名的GitHub开源组织Square贡献的,它的主要优势就在于自动化过早的发觉内存泄露、配置简单、抓取贴心,缺点在于还存在一些bug,不过正常使用百分之九十情况是OK的,其核心原理与MAT工具类似。
内存泄露的原因是因为 对象还被引用 ,gc,就不会进行这个对象的回收。 从而引起内存泄露 。
平时代码中,除了 bitmap,不及时释放,会造成内存泄露,如果占用内存过高,就会OOM .
我们经常犯的错误,就是在 工具类静态方法中, 传人activity ,使activity不能被释放 。
LeakCanary 可以在内存泄露的时候,进行通知告诉我们。
github 地址: https://github.com/square/leakcanary
LeakCanary will automatically show a notification when an activity memory leak is detected in your debug build.