Migration für Android Consumer SDK Version 2.0.0

Updates für das Gradle- und das Android-Gradle-Plug-in

Versionen des Gradle- und Android-Gradle-Plug-ins aktualisieren

Führen Sie zuerst ein Upgrade der Versionen des Gradle-Plug-ins und des Android-Gradle-Plug-ins durch. Dieses Upgrade bietet eine bessere Kompatibilität mit bestimmten SDK-Abhängigkeiten. (einschließlich Kotlin 1.9) sowie einige wichtige Fehlerkorrekturen.

Für diesen SDK-Hauptrelease sind die folgenden Versionsabhängigkeiten für dein Projekt für Android-Anwendung:

  • eine Gradle-Version, die mindestens Version 7.5.0, aber nicht höher als Version 7.6.0 ist.
  • eine AGP-Version (Android Gradle Plugin) im Bereich Version 7.4.x.

Sie können eine höhere Version der Plug-ins als Ziel verwenden. Sie könnten jedoch oder einige neue Funktionen möglicherweise nicht mehr funktionieren.

Wenn Sie die Gradle-Version ändern möchten, ändern Sie die Zeile im /gradle/wrapper/gradle-wrapper.properties Datei

distributionUrl=https\://services.gradle.org/distributions/gradle-7.5.1-all.zip

Um die Version des Android-Gradle-Plug-ins zu ändern, passen Sie die Datei build.gradle an, die enthält den buildscript-Block. Beispiel:

buildscript {
    repositories {
        google()
        mavenCentral()
        jcenter()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:7.4.1'
    }
}

Migration der Java 7- zur Java 8-Bibliothek

Schritt 1: Unterstützung der Java 8-Bibliothek aktivieren

Quelle

Da das Mindest-API-Level des SDK 23 und die erforderliche AGP-Version 7.4 oder höher ist, gilt für Konfiguration sich geringfügig von der erwähnten Quelldokumentation unterscheidet.

buildscript {

    repositories {
        google()
        mavenCentral()
        jcenter()
        maven {
            url = uri("https://storage.googleapis.com/r8-releases/raw")
        }
    }
    dependencies {
        classpath 'com.android.tools:r8:8.0.46'
        classpath 'com.android.tools.build:gradle:7.4.1'
    }
}

android {
    compileOptions {
        // Flag to enable support for the new language APIs
        coreLibraryDesugaringEnabled true
        // Sets Java compatibility to Java 8
        sourceCompatibility JavaVersion.VERSION_1_8
        targetCompatibility JavaVersion.VERSION_1_8
    }
}

dependencies {
    coreLibraryDesugaring 'com.android.tools:desugar_jdk_libs_nio:2.0.3'
}

Schritt 2: Von Proguard oder Dexguard zu R8 migrieren

R8, Quelle

AGP 7.4 und höher verwendet R8 als Standardtool zum Verkleinern, Verschleieren und Optimieren für die Binärdatei, sodass an dieser Stelle keine gesonderten Maßnahmen erforderlich sind.

Wenn das Projekt von AGP 4.0 oder höher migriert wird, gibt AGP möglicherweise die folgenden Warnungen aus: zum Entfernen von Dateien:

  • useProguard true-Nutzung in build.gradle-Datei
  • android.enableR8=false-Nutzung in gradle.properties-Datei

Durch das Entfernen dieser Zeilen werden diese Probleme normalerweise behoben.

Migration von Kotlin 1.6 zu 1.9

Schritt 1: Zu Kotlin-Gradle-Plug-in 1.9.0 migrieren

Quelle

Version des Kotlin-Gradle-Plug-ins im Top-Level-Modul Ihrer Anwendung aktualisieren build.gradle-Datei herunter. org.jetbrains.kotlin:kotlin-gradle-plugin hinzufügen in die Abhängigkeiten aus dem Buildscript-Block ein, falls er fehlt.

buildscript {
  dependencies {
    classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:1.9.0"
  }
}

Sie müssen Ihre Anwendung von Kotlin-synthetics migrieren, aus Kotlin-Gradle-Plug-in 1.6.X oder 1.7.X. Weitere Informationen finden Sie in der offiziellen Migration Leitfaden für erhalten Sie weitere Informationen.

Schritt 2: Upgrade von kotlin-stdlib auf 1.9.0 durchführen

Quelle

Aktualisieren Sie kotlin-stblib in der build.gradle-Datei Ihrer Anwendung auf 1.9.0.

dependencies {
    implementation "org.jetbrains.kotlin:kotlin-stdlib:1.9.0"
}

Entfernen Sie alle Verweise auf kotlin-stdlib-jdk7 oder kotlin-stdlib-jdk8. Beide Abhängigkeiten wurden in kotlin-stdlib ab Kotlin 1.8.0.