На этой странице представлена информация о совместимости версий Kotlin для Navigation SDK, а также рекомендации по переходу на более новую версию.
Требования к версии Kotlin для Navigation SDK
В таблице ниже приведены требования к версии Kotlin, а также рекомендуемые версии AGP и Gradle для последних версий Navigation SDK.
| версия навигационного SDK | Версия Kotlin (обязательно) | Рекомендуемые версии плагина Android Gradle (AGP) и самого Gradle. |
|---|---|---|
| 7.3+ | 2.2.10 |
|
| 6.3 - 7.2 | 2.1 |
|
| 6.0 - 6.2 | 2.0 |
|
| 5.1 - 5.99.1 | 1.9 | Мы рекомендуем использовать AGP 7.3+, в котором есть обходное решение для ошибки JDK-8272564 . |
совместимость версий Kotlin
Kotlin 2.2 поддерживает обратную совместимость с Kotlin 2.1. Это означает, что если вы уже используете Kotlin 2.1 с Navigation SDK, вы сможете обновиться до Kotlin 2.2 без необходимости вносить все изменения, нарушающие совместимость. Однако это относится только к стабильным языковым функциям . Если вы используете альфа-, бета- или экспериментальные функции языка Kotlin, вам, возможно, потребуется внести дополнительные изменения при обновлении.
Облегчение перехода: флаги совместимости Kotlin
Kotlin предоставляет два флага для ограничения критических изменений: https://kotlinlang.org/docs/compatibility-modes.html
языковая версия XY
Этот флаг отменяет изменения, нарушающие обратную совместимость, и возвращает поведение к предыдущей версии Kotlin. Например, если вы используете Kotlin 2.1, вы можете указать [ - language-version 2.1] , и новые изменения, нарушающие обратную совместимость, больше не будут действовать:
android {
kotlinOptions {
languageVersion = '2.1'
}
}
api-version XY
Этот флаг вызывает ошибку сборки Gradle при использовании API из версии Kotlin, более новой, чем apiVersion .
android {
kotlinOptions {
apiVersion = '2.1'
}
}
Более целенаправленный подход
Помимо использования флагов совместимости Kotlin, мы рекомендуем ознакомиться с примечаниями к выпуску Kotlin и выбрать те параметры поведения, которые вы хотите сохранить из версии, с которой вы обновляетесь. Kotlin предоставляет список критических изменений и флагов, которые можно установить для сохранения исходного поведения, в своих руководствах по совместимости для каждой версии:
Будущие обновления Kotlin
Kotlin выпускает новую версию (то есть языковой релиз) каждые 6 месяцев , и Google обычно устанавливает последнюю версию в качестве версии по умолчанию в своих продуктах через 1-2 месяца после этого. Предыдущие версии Kotlin содержали критические изменения, которые требовали от пользователей Navigation SDK обновления до более новой версии. Поэтому мы рекомендуем планировать обновление Kotlin каждые 6 месяцев при переходе на последнюю версию Navigation SDK.