1、LeakCanary的作用
LeakCanary是# square公司推出的专为Android设计的内存泄露检测库
2、如何集成
官网地址:https://github.com/square/leakcanary
2.1、在androidstudio中的build.gradle文件中添加依赖
compile 'com.squareup.leakcanary:leakcanary-android:1.5.4'//debug模式开启
compile 'com.squareup.leakcanary:leakcanary-android-no-op:1.5.4'
//不要两个同时使用
//最新的是1.6.1添加后编译失败
//Error:(31, 17) 错误: 无法访问ActivityCompatApi23
//找不到android.support.v4.app.ActivityCompatApi23的类文件
2.2、在Application中进行初始化
public classMyApplication extends Application {
@Override public void onCreate() {
super.onCreate();
if (LeakCanary.isInAnalyzerProcess(this)) {
// 这个线程是专门给LeakCanary做堆内存分析的
// 在这里不要写app初始化代码
return;
}
LeakCanary.install(this);
// 在这里写你app的初始化代码
}
}
3、具体分析捕获的泄露
可以查看这两篇文章
https://www.jianshu.com/p/7cd328fbfd68
https://blog.youkuaiyun.com/sbsujjbcy/article/details/47999163