Zu Kotlin 2.0 migrieren
Wenn Sie das Consumer SDK für Android 3.0 oder höher verwenden, müssen Sie ein Upgrade auf Kotlin 2.0 durchführen. Auf dieser Seite finden Sie Informationen, die Ihnen den Übergang zur neuen Kotlin-Version erleichtern.
Gradle- und AGP-Kompatibilität
Für Kotlin 2.0 gelten Anforderungen an die Mindest- und Höchstversionen Ihrer Gradle- und Android-Gradle-Plug-in-Version (AGP). Ihr Projekt muss die folgenden Anforderungen für Kotlin 2.0 erfüllen.
Mindestversion des AGP für das Consumer SDK 3.0 und höher
Für das Consumer SDK 3.0 ist AGP 7.3 oder höher erforderlich.
Vollständiger R8-Modus
Das Consumer SDK v3 und niedriger unterstützt den vollständigen R8-Modus nicht. Sie müssen den vollständigen R8-Modus explizit deaktivieren, wenn Ihre Anwendung auf AGP 8.0 oder höher ausgerichtet ist.
# settings.gradle
android.enableR8.fullMode=false
Kotlin-Versionskompatibilität
Kotlin unterstützt die Abwärtskompatibilität mit drei früheren Sprachversionen. Wenn Sie also bereits Kotlin 1.7 oder höher mit dem Consumer SDK verwenden, sollten Sie ein Upgrade auf Kotlin 2.0 durchführen können, ohne alle funktionsgefährdenden Änderungen beheben zu müssen. Die Kotlin-Kompatibilität gilt jedoch nur für stabile Sprachfunktionen. Wenn Sie Alpha-, Beta- oder experimentelle Funktionen in der Kotlin-Sprache verwenden, müssen Sie beim Upgrade möglicherweise zusätzliche Änderungen vornehmen.
Kotlin-Kompatibilitäts-Flags
Wie im vorherigen Abschnitt erwähnt, unterstützt Kotlin beim Upgrade bis zu drei frühere Versionen der Sprache. Kotlin bietet zwei Flags, mit denen sich funktionsgefährdende Änderungen einschränken lassen:
language-version X.Y
Mit diesem Flag werden funktionsgefährdende Änderungen am Verhalten einer früheren Kotlin-Version rückgängig gemacht.
Wenn Sie beispielsweise Kotlin 1.7 verwenden, können Sie [ -
language-version 1.7] angeben. Die neuen funktionsgefährdenden Änderungen werden dann nicht mehr wirksam:
android {
kotlinOptions {
languageVersion = '1.7'
}
}
api-version X.Y
Dieses Flag verhindert, dass neue APIs verwendet werden, bevor der abhängige Downstream-Code für Kotlin 2.0 bereit ist.
android {
kotlinOptions {
apiVersion = '1.7'
}
}
Ein gezielterer Ansatz
Zusätzlich zur Verwendung von Kotlin-Kompatibilitäts-Flags empfehlen wir, die Kotlin-Versionshinweise zu lesen und die Verhaltensweisen auszuwählen, die Sie aus der Version beibehalten möchten, von der Sie ein Upgrade durchführen. Kotlin bietet in den Kompatibilitätsleitfäden für jede Version eine Liste der funktionsgefährdenden Änderungen und der Flags, die festgelegt werden können, um das ursprüngliche Verhalten beizubehalten:
- Kompatibilitätsleitfaden für Version 1.8
- Kompatibilitätsleitfaden für Version 1.9
- Leitfaden zur Kompatibilität mit Version 2.0