Guida alla migrazione all'SDK consumer per Android 3.0

Esegui 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à di Gradle e AGP

Kotlin 2.0 prevede requisiti per le versioni minime e massime 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 e versioni successive

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 supporta 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à delle versioni 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 o versioni successive con l'SDK Consumer, dovresti essere in grado di eseguire l'upgrade a Kotlin 2.0 senza dover risolvere tutte le modifiche che provocano un errore. Tuttavia, la compatibilità con Kotlin si applica solo alle funzionalità del linguaggio stabili. Se utilizzi funzionalità alpha, beta o sperimentali nel linguaggio Kotlin, potresti dover apportare ulteriori modifiche durante l'upgrade.

Flag di compatibilità di Kotlin

Come indicato nella sezione precedente, Kotlin supporta fino a tre versioni precedenti del linguaggio durante l'upgrade. Kotlin fornisce due flag per limitare le modifiche che provocano un errore:

language-version X.Y

Questo flag ripristina le modifiche che provocano un errore al 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 provocano un errore non verranno più applicate:

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à di Kotlin, ti consigliamo di consultare le note di rilascio di Kotlin e di scegliere i comportamenti che vuoi mantenere dalla versione da cui stai eseguendo l'upgrade. Kotlin fornisce un elenco di modifiche che provocano un errore e i flag che possono essere impostati per mantenere il comportamento originale nelle sue guide alla compatibilità per ogni versione: