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