美文网首页
LeakCanary

LeakCanary

作者: 叙忆 | 来源:发表于2017-10-12 17:33 被阅读0次
可以直接在手机端查看内存泄露的工具
公司:square
github:https://github.com/square/leakcanary
用法:
1.添加依赖
 debugCompile 'com.squareup.leakcanary:leakcanary-android:1.5.4'
 releaseCompile 'com.squareup.leakcanary:leakcanary-android-no-op:1.5.4'
2.在自定义Application中添加
public class ExampleApplication extends Application {
    @Override public void onCreate() {
        super.onCreate();
        LeakCanary.install(this);
    }
}
3.检测方法

我们以性能优化-内存泄露案例分析
当该应用出现内存泄露,会在手机上生成Leaks应用
点击进入查看具体的内存泄露

4.分析

静态变量static MainActivity.mBeens
引用了Arraylist,Bean.mContext
导致MainActivity泄露

5.原理

本质上还是使用命令控制生成Hprof文件分析检查内存泄露
然后发送通知
Application
  -install()
LeakCanary
  -androidWatcher()
RefWatcher
  -new AndroidWatcherExecutor -->dumpHeap/分析
  -new AndroidHeapDumper
  -new ServiceHeapDumpListener

相关文章

网友评论

      本文标题:LeakCanary

      本文链接:https://www.haomeiwen.com/subject/uneoyxtx.html