From 5405e18ee84d64767f2fa63d722ebbac004804ec Mon Sep 17 00:00:00 2001 From: Isira Seneviratne Date: Fri, 15 May 2020 12:05:42 +0530 Subject: [PATCH] Update project to use Android Gradle plugin 4.0 and support Java 8 desugaring. Also migrate from kotlin-stdlib-jdk7 to kotlin-stdlib-jdk8. --- android/BOINC/.idea/jarRepositories.xml | 30 +++++++++++++++++++ android/BOINC/app/build.gradle | 11 ++++++- .../BOINC/app/src/main/AndroidManifest.xml | 8 ++--- android/BOINC/build.gradle | 2 +- 4 files changed, 43 insertions(+), 8 deletions(-) create mode 100644 android/BOINC/.idea/jarRepositories.xml diff --git a/android/BOINC/.idea/jarRepositories.xml b/android/BOINC/.idea/jarRepositories.xml new file mode 100644 index 0000000000..9dbe5e2cd5 --- /dev/null +++ b/android/BOINC/.idea/jarRepositories.xml @@ -0,0 +1,30 @@ + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/android/BOINC/app/build.gradle b/android/BOINC/app/build.gradle index 2c44eb7120..0993a2591b 100644 --- a/android/BOINC/app/build.gradle +++ b/android/BOINC/app/build.gradle @@ -57,6 +57,9 @@ android { targetSdkVersion 28 versionCode buildVersionCode().toInteger() versionName buildVersionName() + + // Required when setting minSdkVersion to 20 or lower + multiDexEnabled true } buildTypes { @@ -76,6 +79,9 @@ android { compileOptions { sourceCompatibility '1.8' targetCompatibility '1.8' + + // Flag to enable support for the new language APIs + coreLibraryDesugaringEnabled true } kotlinOptions { jvmTarget = '1.8' @@ -105,12 +111,15 @@ ext { } dependencies { + coreLibraryDesugaring 'com.android.tools:desugar_jdk_libs:1.0.5' + implementation 'androidx.multidex:multidex:2.0.1' + implementation 'androidx.appcompat:appcompat:1.1.0' implementation 'androidx.legacy:legacy-support-v4:1.0.0' implementation 'androidx.core:core-ktx:1.2.0' implementation 'commons-io:commons-io:2.6' implementation 'org.apache.commons:commons-lang3:3.10' - implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version" + implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk8:$kotlin_version" testImplementation 'androidx.test:core:1.2.0' testImplementation 'com.google.guava:guava-testlib:28.2-jre' diff --git a/android/BOINC/app/src/main/AndroidManifest.xml b/android/BOINC/app/src/main/AndroidManifest.xml index 2fbb0302d0..4ece1cc65f 100644 --- a/android/BOINC/app/src/main/AndroidManifest.xml +++ b/android/BOINC/app/src/main/AndroidManifest.xml @@ -60,7 +60,8 @@ android:label="@string/app_name" android:theme="@style/Theme.Styled" android:largeHeap="true" - android:banner="@drawable/banner"> + android:banner="@drawable/banner" + android:name="androidx.multidex.MultiDexApplication"> - - - diff --git a/android/BOINC/build.gradle b/android/BOINC/build.gradle index b499f432ea..a1f0d6811e 100644 --- a/android/BOINC/build.gradle +++ b/android/BOINC/build.gradle @@ -10,7 +10,7 @@ buildscript { google() } dependencies { - classpath 'com.android.tools.build:gradle:3.6.3' + classpath 'com.android.tools.build:gradle:4.0.0-rc01' classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version" classpath 'com.vanniktech:gradle-android-junit-jacoco-plugin:0.16.0' }