Compatibilidad y migración de versiones de Kotlin

En esta página, se proporciona información sobre la compatibilidad de versiones de Kotlin para el SDK de Navigation, así como orientación para migrar a una versión más reciente.

En la siguiente tabla, se describen los requisitos de la versión de Kotlin y las versiones recomendadas de AGP y Gradle para las versiones recientes del SDK de Navigation.

Versión del SDK de Navigation Versión de Kotlin (obligatorio) Versiones de Gradle y del complemento de Android para Gradle (AGP) (recomendado)
6.2+ 2.1
  • AGP 8.7.3
  • Gradle 8.10.2
6.0 a 6.2 2.0
  • AGP 8.3.0
  • Gradle 8.4
5.1 a 5.99.1 1.9 Te recomendamos que uses AGP 7.3 o versiones posteriores, que tienen una solución alternativa para JDK-8272564.

Compatibilidad de versiones de Kotlin

Kotlin 2.1 admite la retrocompatibilidad con Kotlin 2.0. Esto significa que, si ya usas Kotlin 2.0 con el SDK de Navigation, deberías poder actualizar a Kotlin 2.1 sin tener que resolver todos los cambios que generan errores. Sin embargo, esto 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 la versión.

Facilita la transición: marcas de compatibilidad con Kotlin

Kotlin proporciona dos marcas para ayudar a limitar los cambios que generan interrupciones: https://kotlinlang.org/docs/compatibility-modes.html

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 2.0, puedes especificar [ - language-version 2.0] y los nuevos cambios que generan interrupciones ya no tendrán efecto:

android {
   kotlinOptions {
       languageVersion = '2.0'
   }
}

api-version X.Y

Esta marca arroja un error de compilación de Gradle cuando se usa una API de una versión de Kotlin más reciente que apiVersion.

android {
   kotlinOptions {
       apiVersion = '2.0'
   }
}

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:

Actualizaciones futuras de Kotlin

Kotlin lanza una versión nueva (es decir, una versión del lenguaje) cada 6 meses, y Google suele incorporar la versión más reciente como predeterminada en nuestros productos entre 1 y 2 meses después. Las versiones anteriores de Kotlin incluían cambios rotundos que requerían que los clientes del SDK de Navigation actualizaran a una versión más reciente. Por este motivo, te recomendamos que planifiques una actualización de Kotlin cada 6 meses cuando adoptes la versión más reciente del SDK de Navigation.