相关文章
Android性能优化系列
Java虚拟机系列
1.概述
如果使用MAT来分析内存问题,会有一些难度,并且效率也不是很高,对于一个内存泄漏问题,可能要进行多次排查和对比。
为了能够简单迅速的发现内存泄漏,Square公司基于MAT开源了LeakCanary。
2.使用LeakCanary
首先配置build.gradle:
dependencies {
debugCompile 'com.squareup.leakcanary:leakcanary-android:1.5.2'
releaseCompile 'com.squareup.leakcanary:leakcanary-android-no-op:1.5.2'
}
接下来在Application加入如下代码。
public class LeakApplication extends Application {
@Override public void onCreate() {
super.onCreate();
if (LeakCanary.isInAnalyzerProcess(this)) {
//1
// This process is dedicated to LeakCanary for heap analysis.
// You should not init your app in this process.
return;
}
LeakCanary.install(

本文介绍了Square公司的LeakCanary,一个用于简化Android内存泄漏检测的工具。通过配置build.gradle和在Application中加入相关代码,我们可以快速实现对Activity内存泄漏的监控。LeakCanary通过生成的Notification展示内存泄漏信息,提供详细的引用链分析,帮助开发者定位并解决内存泄漏问题。示例中解释了非静态内部类导致的内存泄漏,并展示了如何通过使内部类静态来修复这个问题。
最低0.47元/天 解锁文章
693

被折叠的 条评论
为什么被折叠?



