Skip to content

Commit 7d6c836

Browse files
committed
Leak Canary Integration
1 parent a81aa7f commit 7d6c836

File tree

2 files changed

+18
-8
lines changed

2 files changed

+18
-8
lines changed

app/build.gradle

+4
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,10 @@ dependencies {
2525
testCompile 'junit:junit:4.12'
2626
androidTestCompile "com.android.support:support-annotations:${project.supportLibVersion}"
2727
androidTestCompile 'com.android.support.test.espresso:espresso-core:2.2.2'
28+
29+
debugCompile 'com.squareup.leakcanary:leakcanary-android:1.5.1'
30+
releaseCompile 'com.squareup.leakcanary:leakcanary-android-no-op:1.5.1'
31+
testCompile 'com.squareup.leakcanary:leakcanary-android-no-op:1.5.1'
2832
}
2933

3034
android {

app/src/main/java/fr/free/nrw/commons/CommonsApplication.java

+14-8
Original file line numberDiff line numberDiff line change
@@ -23,14 +23,7 @@
2323
import com.nostra13.universalimageloader.core.ImageLoader;
2424
import com.nostra13.universalimageloader.core.ImageLoaderConfiguration;
2525
import com.nostra13.universalimageloader.utils.StorageUtils;
26-
27-
import fr.free.nrw.commons.caching.CacheController;
28-
import fr.free.nrw.commons.category.Category;
29-
import fr.free.nrw.commons.contributions.Contribution;
30-
import fr.free.nrw.commons.data.DBOpenHelper;
31-
import fr.free.nrw.commons.modifications.ModifierSequence;
32-
import fr.free.nrw.commons.auth.AccountUtil;
33-
import fr.free.nrw.commons.nearby.NearbyPlaces;
26+
import com.squareup.leakcanary.LeakCanary;
3427

3528
import org.acra.ACRA;
3629
import org.acra.ReportingInteractionMode;
@@ -49,6 +42,13 @@
4942
import java.io.File;
5043
import java.io.IOException;
5144

45+
import fr.free.nrw.commons.auth.AccountUtil;
46+
import fr.free.nrw.commons.caching.CacheController;
47+
import fr.free.nrw.commons.category.Category;
48+
import fr.free.nrw.commons.contributions.Contribution;
49+
import fr.free.nrw.commons.data.DBOpenHelper;
50+
import fr.free.nrw.commons.modifications.ModifierSequence;
51+
import fr.free.nrw.commons.nearby.NearbyPlaces;
5252
import fr.free.nrw.commons.utils.FileUtils;
5353
import timber.log.Timber;
5454

@@ -166,6 +166,12 @@ public synchronized NearbyPlaces getNearbyPlaces() {
166166
@Override
167167
public void onCreate() {
168168
super.onCreate();
169+
if (LeakCanary.isInAnalyzerProcess(this)) {
170+
// This process is dedicated to LeakCanary for heap analysis.
171+
// You should not init your app in this process.
172+
return;
173+
}
174+
LeakCanary.install(this);
169175

170176
Timber.plant(new Timber.DebugTree());
171177

0 commit comments

Comments
 (0)