Remove multidex as not needed without guava/apache, upgrade leakcanary to fix crash

This commit is contained in:
Sean Mac Gillicuddy 2019-05-15 13:41:21 +01:00
parent 5b01c30a51
commit 6e33ae2201
2 changed files with 10 additions and 36 deletions

View File

@ -49,9 +49,6 @@ dependencies {
implementation "com.android.support:support-v4:$supportLibraryVersion"
implementation "com.android.support:design:$supportLibraryVersion"
implementation "com.android.support:cardview-v7:$supportLibraryVersion"
implementation 'com.android.support:multidex:1.0.2'
implementation 'com.android.support.constraint:constraint-layout:1.0.2'
androidTestImplementation 'com.android.support.test.uiautomator:uiautomator-v18:2.1.3'
@ -120,19 +117,8 @@ dependencies {
androidTestImplementation "org.mockito:mockito-android:2.24.5"
// Leak canary
implementation 'com.squareup.leakcanary:leakcanary-android-no-op:1.5.4'
// Only enable leak canary in debug builds
configurations.all { config ->
if (config.name.contains('debug') || config.name.contains("Debug")) {
config.resolutionStrategy.eachDependency { details ->
if (details.requested.group == 'com.squareup.leakcanary' &&
details.requested.name == 'leakcanary-android-no-op') {
details.useTarget(group: details.requested.group, name: 'leakcanary-android',
version: details.requested.version)
}
}
}
}
debugImplementation 'com.squareup.leakcanary:leakcanary-android:2.0-alpha-1'
implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version"
implementation 'com.android.support.constraint:constraint-layout:1.1.3'
implementation "android.arch.lifecycle:extensions:1.1.1"
@ -166,7 +152,6 @@ android {
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
// See https://github.com/linkedin/dexmaker/issues/65 for why we need the following line.
testInstrumentationRunnerArguments.notClass = 'com.android.dex.DexIndexOverflowException'
multiDexEnabled true
vectorDrawables.useSupportLibrary = true
}

View File

@ -18,26 +18,21 @@
package org.kiwix.kiwixmobile;
import android.app.Activity;
import android.app.Application;
import android.content.Context;
import android.os.Environment;
import android.support.multidex.MultiDexApplication;
import android.util.Log;
import android.support.v7.app.AppCompatDelegate;
import com.squareup.leakcanary.LeakCanary;
import org.kiwix.kiwixmobile.di.components.ApplicationComponent;
import org.kiwix.kiwixmobile.di.components.DaggerApplicationComponent;
import org.kiwix.kiwixmobile.di.modules.ApplicationModule;
import java.io.File;
import java.io.IOException;
import javax.inject.Inject;
import android.util.Log;
import dagger.android.AndroidInjector;
import dagger.android.DispatchingAndroidInjector;
import dagger.android.HasActivityInjector;
import java.io.File;
import java.io.IOException;
import javax.inject.Inject;
import org.kiwix.kiwixmobile.di.components.ApplicationComponent;
import org.kiwix.kiwixmobile.di.components.DaggerApplicationComponent;
public class KiwixApplication extends MultiDexApplication implements HasActivityInjector {
public class KiwixApplication extends Application implements HasActivityInjector {
private static KiwixApplication application;
private static ApplicationComponent applicationComponent;
@ -75,11 +70,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;
}
if (isExternalStorageWritable()) {
File appDirectory = new File(Environment.getExternalStorageDirectory() + "/Kiwix");
logFile = new File(appDirectory, "logcat.txt");
@ -111,7 +101,6 @@ public class KiwixApplication extends MultiDexApplication implements HasActivity
Log.d("KIWIX", "Started KiwixApplication");
applicationComponent.inject(this);
LeakCanary.install(this);
}
/* Checks if external storage is available for read and write */