Migra a Kotlin 2.0
Si usas el SDK de Consumer para Android 3.0 o versiones posteriores, debes actualizar a Kotlin 2.0. En esta página, se proporciona orientación para facilitar la transición a la nueva versión de Kotlin.
Compatibilidad de Gradle y el AGP
Kotlin 2.0 tiene requisitos para las versiones mínimas y máximas de tu versión de Gradle y del complemento de Android para Gradle (AGP). Asegúrate de que tu proyecto cumpla con estos requisitos para Kotlin 2.0.
Versión mínima del AGP para el SDK de Consumer 3.0 y versiones posteriores
El SDK para consumidores 3.0 requiere el uso de AGP 7.3 o superior.
Modo R8 completo
El SDK para consumidores v3 y versiones anteriores no admite el modo R8 completo. Debes inhabilitar explícitamente el modo Full R8 si tu aplicación se orienta a AGP 8.0 o versiones posteriores.
# settings.gradle
android.enableR8.fullMode=false
Compatibilidad de versiones de Kotlin
Kotlin admite la retrocompatibilidad con tres versiones anteriores del lenguaje. Esto significa que, si ya usas Kotlin 1.7 o una versión posterior con el SDK para el consumidor, deberías poder actualizar a Kotlin 2.0 sin tener que resolver todos los cambios que generan errores. Sin embargo, la compatibilidad con Kotlin solo se aplica a las funciones estables del lenguaje. Si usas funciones alfa, beta o experimentales en el lenguaje Kotlin, es posible que debas realizar cambios adicionales cuando actualices la versión.
Marcas de compatibilidad con Kotlin
Como se indicó en la sección anterior, Kotlin admite hasta 3 versiones anteriores del lenguaje cuando se realiza una actualización. Kotlin proporciona dos marcas para ayudar a limitar los cambios que generan interrupciones:
language-version X.Y
Esta marca revierte los cambios que interrumpen el comportamiento de una versión anterior de Kotlin.
Por ejemplo, si usas Kotlin 1.7, puedes especificar [ -
language-version 1.7] y los nuevos cambios breaking ya no surtirán efecto:
android {
kotlinOptions {
languageVersion = '1.7'
}
}
api-version X.Y
Esta marca evita que se usen APIs nuevas antes de que el código descendente dependiente esté listo para incorporar Kotlin 2.0.
android {
kotlinOptions {
apiVersion = '1.7'
}
}
Un enfoque más segmentado
Además de usar las marcas de compatibilidad de Kotlin, te recomendamos que revises las notas de la versión de Kotlin y elijas los comportamientos que deseas conservar de la versión desde la que realizas la actualización. Kotlin proporciona una lista de cambios disruptivos y las marcas que se pueden establecer para conservar el comportamiento original en sus guías de compatibilidad para cada versión:
- Guía de compatibilidad de la versión 1.8
- Guía de compatibilidad de la versión 1.9
- Guía de compatibilidad de la versión 2.0