Eseguire la migrazione a Kotlin 2.0
Se utilizzi l'SDK Consumer per Android 3.0 o versioni successive, devi eseguire l'upgrade a Kotlin 2.0. Questa pagina fornisce indicazioni per facilitare la transizione alla nuova versione di Kotlin.
Compatibilità con Gradle e AGP
Kotlin 2.0 ha requisiti per le versioni minima e massima per la versione di Gradle e del plug-in Android per Gradle (AGP). Assicurati che il tuo progetto soddisfi questi requisiti per Kotlin 2.0.
Versione minima di AGP per l'SDK Consumer 3.0+
L'SDK Consumer 3.0 richiede l'utilizzo di AGP 7.3 o versioni successive.
Modalità R8 completa
L'SDK consumer v3 e versioni precedenti non supportano la modalità R8 completa. Devi disattivare esplicitamente la modalità R8 completa se la tua applicazione ha come target AGP 8.0 o versioni successive.
# settings.gradle
android.enableR8.fullMode=false
Compatibilità della versione di Kotlin
Kotlin supporta la compatibilità con le versioni precedenti con tre versioni precedenti del linguaggio. Ciò significa che se utilizzi già Kotlin 1.7+ con l'SDK Consumer, dovresti poter eseguire l'upgrade a Kotlin 2.0 senza dover risolvere tutte le modifiche che causano errori irreversibili. Tuttavia, la compatibilità con Kotlin si applica solo alle funzionalità stabili del linguaggio. Se utilizzi funzionalità alpha, beta o sperimentali nel linguaggio Kotlin, potrebbe essere necessario apportare modifiche aggiuntive durante l'upgrade.
Flag di compatibilità di Kotlin
Come indicato nella sezione precedente, Kotlin supporta fino a tre versioni precedenti della lingua durante l'upgrade. Kotlin fornisce due flag per limitare le modifiche che causano interruzioni:
language-version X.Y
Questo flag ripristina le modifiche che causano interruzioni nel comportamento di una versione precedente di Kotlin.
Ad esempio, se utilizzi Kotlin 1.7, puoi specificare [ -
language-version 1.7]
e le nuove modifiche che causano interruzioni non avranno più effetto:
android {
kotlinOptions {
languageVersion = '1.7'
}
}
api-version X.Y
Questo flag impedisce l'utilizzo di nuove API prima che il codice downstream dipendente sia pronto per incorporare Kotlin 2.0.
android {
kotlinOptions {
apiVersion = '1.7'
}
}
Un approccio più mirato
Oltre a utilizzare i flag di compatibilità Kotlin, ti consigliamo di esaminare le note di rilascio di Kotlin e scegliere i comportamenti che vuoi conservare della versione da cui esegui l'upgrade. Kotlin fornisce un elenco di modifiche che causano interruzioni e i flag che possono essere impostati per mantenere il comportamento originale nelle guide alla compatibilità per ogni versione:
- Guida alla compatibilità 1.8
- Guida alla compatibilità 1.9
- Guida alla compatibilità con la versione 2.0