Kotlin 2.0으로 이전

Android 6.0 이상용 Navigation SDK를 사용하는 경우 Kotlin 2.0으로 업그레이드해야 합니다. 이 페이지에서는 새 Kotlin 버전으로 원활하게 전환할 수 있도록 안내합니다.

Gradle 및 AGP 호환성

Kotlin 2.0에는 Gradle 및 Android Gradle 플러그인(AGP) 버전에 관한 최소 및 최대 버전 요구사항이 있습니다. 프로젝트가 Kotlin 2.0의 다음 요구사항을 충족하는지 확인합니다.

Navigation SDK 6.0 이상을 위한 AGP 최소 버전

Navigation SDK 6.0과 함께 AGP 7.3 이상을 사용하는 것이 좋습니다. AGP 8.3 및 Gradle 8.4로 SDK를 확인했으며 SDK는 R8의 전체 모드와 호환됩니다.

Kotlin 버전 호환성

Kotlin은 이전 언어 버전 3개와의 하위 호환성을 지원합니다. 즉, 이미 Navigation SDK와 함께 Kotlin 1.7 이상을 사용하고 있다면 모든 중단 변경사항을 해결하지 않고도 Kotlin 2.0으로 업그레이드할 수 있습니다. 그러나 안정적인 언어 기능에만 적용됩니다. Kotlin 언어에서 알파, 베타 또는 실험용 기능을 사용하는 경우 업그레이드 시 추가로 변경해야 할 수 있습니다.

원활한 전환: Kotlin 호환성 플래그

이전 섹션에서 언급했듯이 Kotlin은 업그레이드 시 이전 언어 버전 최대 3개를 지원합니다. Kotlin은 브레이킹 체인지를 제한하는 데 도움이 되는 두 가지 플래그를 제공합니다.

language-version X.Y

이 플래그는 이전 Kotlin 버전의 동작에 대한 중대한 변경사항을 되돌립니다. 예를 들어 Kotlin 1.7을 사용하는 경우 [ - language-version 1.7]을 지정할 수 있습니다. 그러면 새로운 브레이킹 체인지가 더 이상 적용되지 않습니다.

android {
   kotlinOptions {
       languageVersion = '1.7'
   }
}

api-version X.Y

이 플래그는 종속된 다운스트림 코드가 Kotlin 2.0을 통합할 준비가 되기 전에 새 API가 사용되지 않도록 합니다.

android {
   kotlinOptions {
       apiVersion = '1.7'
   }
}

보다 타겟팅된 접근 방식

Kotlin 호환성 플래그를 사용하는 것 외에도 Kotlin 출시 노트를 검토하고 업그레이드하려는 버전에서 유지하려는 동작을 선택하는 것이 좋습니다. Kotlin은 각 버전의 호환성 가이드에서 중단 변경사항 목록과 원래 동작을 유지하도록 설정할 수 있는 플래그를 제공합니다.