From b986ff91927f7351119a6abb664ce099850681fe Mon Sep 17 00:00:00 2001 From: Sean Mac Gillicuddy Date: Wed, 10 Jul 2019 14:57:16 +0100 Subject: [PATCH] #1258 upgrade leakcanary to 2.0 and enable crashing on instrumentation runs --- app/build.gradle | 7 ++++--- .../main/java/org/kiwix/kiwixmobile/KiwixApplication.java | 7 ------- 2 files changed, 4 insertions(+), 10 deletions(-) diff --git a/app/build.gradle b/app/build.gradle index 2e8506008..0cec50dae 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -124,9 +124,9 @@ dependencies { implementation "io.reactivex.rxjava2:rxjava:$rxJavaVersion" // Leak canary - releaseImplementation 'com.squareup.leakcanary:leakcanary-android-no-op:1.6.3' - androidTestImplementation 'com.squareup.leakcanary:leakcanary-android-no-op:1.6.3' - debugImplementation 'com.squareup.leakcanary:leakcanary-android:1.6.3' + debugImplementation 'com.squareup.leakcanary:leakcanary-android:2.0-alpha-2' + androidTestImplementation "com.squareup.leakcanary:leakcanary-android-instrumentation:2.0-alpha-2" + implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlinVersion" implementation "android.arch.lifecycle:extensions:1.1.1" @@ -212,6 +212,7 @@ android { minSdkVersion 15 targetSdkVersion 28 testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" + testInstrumentationRunnerArgument "listener", "leakcanary.FailTestOnLeakRunListener" // See https://github.com/linkedin/dexmaker/issues/65 for why we need the following line. testInstrumentationRunnerArguments.notClass = "com.android.dex.DexIndexOverflowException" multiDexEnabled true diff --git a/app/src/main/java/org/kiwix/kiwixmobile/KiwixApplication.java b/app/src/main/java/org/kiwix/kiwixmobile/KiwixApplication.java index 1f96ddc21..5311cc96f 100644 --- a/app/src/main/java/org/kiwix/kiwixmobile/KiwixApplication.java +++ b/app/src/main/java/org/kiwix/kiwixmobile/KiwixApplication.java @@ -26,7 +26,6 @@ import android.util.Log; import androidx.appcompat.app.AppCompatDelegate; import androidx.multidex.MultiDexApplication; import com.jakewharton.threetenabp.AndroidThreeTen; -import com.squareup.leakcanary.LeakCanary; import dagger.android.AndroidInjector; import dagger.android.DispatchingAndroidInjector; import dagger.android.HasActivityInjector; @@ -73,11 +72,6 @@ public class KiwixApplication extends MultiDexApplication implements HasActivity @Override public void onCreate() { super.onCreate(); - if (LeakCanary.isInAnalyzerProcess(this)) { - // This process is dedicated to LeakCanary for heap analysis. - // You should not init your app in this process. - return; - } AndroidThreeTen.init(this); if (isExternalStorageWritable()) { File appDirectory = new File(Environment.getExternalStorageDirectory() + "/Kiwix"); @@ -110,7 +104,6 @@ public class KiwixApplication extends MultiDexApplication implements HasActivity Log.d("KIWIX", "Started KiwixApplication"); applicationComponent.inject(this); - LeakCanary.install(this); if (BuildConfig.DEBUG) { StrictMode.setThreadPolicy(buildThreadPolicy(new StrictMode.ThreadPolicy.Builder())); StrictMode.setVmPolicy(buildVmPolicy(new StrictMode.VmPolicy.Builder()));