Guía de migración al SDK de consumidor de Android 3.0

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 proporcionan instrucciones para facilitar la transición a la nueva versión de Kotlin.

Compatibilidad con Gradle y AGP

Kotlin 2.0 tiene requisitos para las versiones mínima y máxima 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 de AGP para el SDK de Consumer 3.0 o versiones posteriores

El SDK de Consumer 3.0 requiere el uso de AGP 7.3 o versiones posteriores.

Modo R8 completo

El SDK de Consumer v3 y versiones anteriores no admite el modo R8 completo. Debes inhabilitar explícitamente el modo R8 completo si tu aplicación apunta a AGP 8.0 o versiones posteriores.

# settings.gradle
android.enableR8.fullMode=false

Compatibilidad con la versión de Kotlin

Kotlin admite la retrocompatibilidad con tres versiones anteriores del lenguaje. Esto significa que, si ya usas Kotlin 1.7 o versiones posteriores con el SDK de Consumer, deberías poder actualizar a Kotlin 2.0 sin tener que resolver todos los cambios rotundos. Sin embargo, la compatibilidad con Kotlin solo se aplica a las funciones de lenguaje estables. Si usas funciones alfa, beta o experimentales en el lenguaje Kotlin, es posible que debas realizar cambios adicionales cuando actualices.

Marcas de compatibilidad con Kotlin

Como se indicó en la sección anterior, Kotlin admite hasta 3 versiones anteriores del lenguaje cuando se actualiza. Kotlin proporciona dos marcas para ayudar a limitar los cambios rotundos:

language-version X.Y

Esta marca revierte los cambios rotundos al 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 rotundos ya no tendrá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 dependiente de nivel inferior esté listo para incorporar Kotlin 2.0.

android {
   kotlinOptions {
       apiVersion = '1.7'
   }
}

Un enfoque más específico

Además de usar marcas de compatibilidad con 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 rotundos y las marcas que se pueden configurar para conservar el comportamiento original en sus guías de compatibilidad para cada versión: