背景:相信做大家都听过或者用过LeakCanary这个检查内存泄漏工具,但是大部分都是在As上面使用的。但是还有有一部人代码是Eclipse上面编码的。也想用怎么办呢?当然也是可以的。
1.下载Eclipse版本的LeakCanary
下载地址:https://github.com/zsj1225/LeakCanary4Eclipse
下载导入Eclipse。
依赖关系如下:
LeakAnalyzer依赖LeakWacher
DisplayLeakActivity依赖LeakAnalyzer
我们的项目依赖DisplayLeakActivity
2、在application 初始化leakcanary
@Override
public void onCreate() {
super.onCreate();
//LeakCanary start
if (LeakCanary.isInAnalyzerProcess(this)) {
// This process is dedicated to LeakCanary for heap analysis.
// You should not init your app in this process.
return;
}
LeakCanary.install(this);
//LeakCanary end
}
3、在AndroidMainfest.xml 中配置
<!--leakcanary start -->
<!-- 写SD卡权限 -->
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<service
android:name="com.squareup.leakcanary.internal.HeapAnalyzerService"
android:process=":leakcanary"
android:enabled="false"
/>
<service
android:name="com.squareup.leakcanary.DisplayLeakService"
android:enabled="false"
/>
<activity
android:theme="@style/leak_canary_LeakCanary.Base"
android:name="com.squareup.leakcanary.internal.DisplayLeakActivity"
android:enabled="false"
android:label="@string/leak_canary_display_activity_label"
android:icon="@drawable/leak_canary_icon"
android:taskAffinity="com.squareup.leakcanary"
>
<intent-filter>
<action android:name="android.intent.action.MAIN"/>
<category android:name="android.intent.category.LAUNCHER"/>
</intent-filter>
</activity>
<activity
android:theme="@style/leak_canary_Theme.Transparent"
android:name="com.squareup.leakcanary.internal.RequestStoragePermissionActivity"
android:taskAffinity="com.squareup.leakcanary"
android:enabled="false"
android:icon="@drawable/leak_canary_icon"
android:label="@string/leak_canary_storage_permission_activity_label"
/>
<!--leakcanary end -->
完成上面三步就完成配置了。