diff --git a/android/build.gradle b/android/build.gradle index 126bc61eeb..53374c7638 100644 --- a/android/build.gradle +++ b/android/build.gradle @@ -26,19 +26,19 @@ buildscript { ext.googleFirebaseServicesEnabled = project.hasProperty('firebase') ?: googleFirebaseServicesDefault dependencies { - classpath 'com.android.tools.build:gradle:7.3.1' + classpath 'com.android.tools.build:gradle:7.4.1' if (googleMobileServicesEnabled) { println("Building with Google Mobile Services") - classpath 'com.google.gms:google-services:4.3.10' + classpath 'com.google.gms:google-services:4.3.15' } else { println("Building without Google Services") } if (googleFirebaseServicesEnabled) { println("Building with Google Firebase Services") - classpath 'com.google.firebase:firebase-crashlytics-gradle:2.8.1' - classpath 'com.google.firebase:firebase-appdistribution-gradle:2.2.0' + classpath 'com.google.firebase:firebase-crashlytics-gradle:2.9.4' + classpath 'com.google.firebase:firebase-appdistribution-gradle:3.2.0' } else { println("Building without Google Firebase Services") } @@ -75,36 +75,34 @@ dependencies { // Google Firebase Services if (googleFirebaseServicesEnabled) { // Import the BoM for the Firebase platform - implementation platform('com.google.firebase:firebase-bom:30.5.0') + implementation platform('com.google.firebase:firebase-bom:31.2.1') // Add the dependencies for the Crashlytics and Analytics libraries // When using the BoM, you don't specify versions in Firebase library dependencies implementation 'com.google.firebase:firebase-crashlytics' implementation 'com.google.firebase:firebase-crashlytics-ndk' } - implementation 'androidx.annotation:annotation:1.5.0' - implementation 'androidx.appcompat:appcompat:1.7.0-alpha01' - implementation 'androidx.constraintlayout:constraintlayout:2.1.4' - implementation 'androidx.fragment:fragment:1.5.4' - // Lifecycle is added as a workaround for duplicate classes error caused by some outdated dependency: + // This line is added as a workaround for duplicate classes error caused by some outdated dependency: // > A failure occurred while executing com.android.build.gradle.internal.tasks.CheckDuplicatesRunnable - // > Duplicate class androidx.lifecycle.ViewModelLazy found in modules jetified-lifecycle-viewmodel-ktx-2.3.1-runtime (androidx.lifecycle:lifecycle-viewmodel-ktx:2.3.1) and lifecycle-viewmodel-2.5.1-runtime (androidx.lifecycle:lifecycle-viewmodel:2.5.1) - // Duplicate class androidx.lifecycle.ViewTreeViewModelKt found in modules jetified-lifecycle-viewmodel-ktx-2.3.1-runtime (androidx.lifecycle:lifecycle-viewmodel-ktx:2.3.1) and lifecycle-viewmodel-2.5.1-runtime (androidx.lifecycle:lifecycle-viewmodel:2.5.1) - implementation 'androidx.lifecycle:lifecycle-viewmodel:2.5.1' - implementation 'androidx.lifecycle:lifecycle-viewmodel-ktx:2.5.1' + // We don't use Kotlin, but some dependencies are actively using it. + implementation(platform('org.jetbrains.kotlin:kotlin-bom:1.8.0')) + implementation 'androidx.annotation:annotation:1.6.0-dev01' + implementation 'androidx.appcompat:appcompat:1.6.1' + implementation 'androidx.constraintlayout:constraintlayout:2.1.4' + implementation 'androidx.fragment:fragment:1.5.5' implementation 'androidx.preference:preference:1.2.0' implementation 'androidx.recyclerview:recyclerview:1.2.1' - implementation 'androidx.work:work-runtime:2.7.1' - implementation 'com.google.android.material:material:1.8.0-alpha02' - implementation 'com.google.code.gson:gson:2.10' + implementation 'androidx.work:work-runtime:2.8.0' + implementation 'com.google.android.material:material:1.8.0' + implementation 'com.google.code.gson:gson:2.10.1' implementation 'com.timehop.stickyheadersrecyclerview:library:0.4.3@aar' implementation 'com.github.devnullorthrow:MPAndroidChart:3.2.0-alpha' implementation 'net.jcip:jcip-annotations:1.0' // Test Dependencies testImplementation 'junit:junit:4.13.2' - testImplementation 'org.mockito:mockito-core:4.8.1' - testImplementation 'org.mockito:mockito-inline:4.8.1' + testImplementation 'org.mockito:mockito-core:5.1.1' + testImplementation 'org.mockito:mockito-inline:5.1.1' } def run(cmd) { @@ -454,7 +452,6 @@ task prepareGoogleReleaseListing { final sourceFiles = fileTree(dir: sourceDir, include: "**/*.txt", exclude: "**/*-${targetFlavor}.txt") sourceFiles.each { File sourceFile -> - final path = sourceFile.getPath() final locale = sourceFile.parentFile.getName() final targetLocaleDir = new File(targetDir, locale) if (!targetLocaleDir.isDirectory()) diff --git a/android/gradle.properties b/android/gradle.properties index c9cf2e5f8f..5f249e8b1e 100644 --- a/android/gradle.properties +++ b/android/gradle.properties @@ -1,7 +1,7 @@ propMinSdkVersion=21 propTargetSdkVersion=33 propCompileSdkVersion=33 -propBuildToolsVersion=33.0.0 +propBuildToolsVersion=33.0.2 org.gradle.caching=true org.gradle.jvmargs=-Xmx1024m -Xms256m