Migracja do Kotlin 2.0
Jeśli używasz pakietu Consumer SDK na Androida w wersji 3.0 lub nowszej, musisz przejść na Kotlin w wersji 2.0. Na tej stronie znajdziesz wskazówki, które ułatwią przejście na nową wersję języka Kotlin.
Zgodność Gradle i AGP
Kotlin 2.0 ma wymagania dotyczące minimalnej i maksymalnej wersji Gradle i wtyczki Androida do obsługi Gradle (AGP). Upewnij się, że Twój projekt spełnia te wymagania dotyczące Kotlin 2.0.
Minimalna wersja wtyczki Androida do obsługi Gradle dla pakietu SDK dla konsumentów w wersji 3.0 lub nowszej
Pakiet Consumer SDK 3.0 wymaga używania wtyczki AGP w wersji 7.3 lub nowszej.
Tryb pełny R8
Pakiety SDK w wersji 3 i starszych nie obsługują trybu Full R8. Jeśli Twoja aplikacja jest kierowana na wtyczkę Androida do obsługi Gradle w wersji 8.0 lub nowszej, musisz wyraźnie wyłączyć tryb pełny R8.
# settings.gradle
android.enableR8.fullMode=false
Zgodność wersji Kotlin
Kotlin obsługuje zgodność wsteczną z 3 poprzednimi wersjami języka. Oznacza to, że jeśli używasz już języka Kotlin w wersji 1.7 lub nowszej z pakietem SDK dla konsumentów, możesz przejść na język Kotlin w wersji 2.0 bez konieczności rozwiązywania wszystkich zmian powodujących niezgodność. Jednak zgodność z Kotlinem dotyczy tylko stabilnych funkcji języka. Jeśli używasz funkcji w wersji alfa, beta lub eksperymentalnych w języku Kotlin, podczas uaktualniania może być konieczne wprowadzenie dodatkowych zmian.
Flagi zgodności z Kotlinem
Jak wspomnieliśmy w poprzedniej sekcji, podczas uaktualniania Kotlin obsługuje do 3 poprzednich wersji języka. Kotlin udostępnia 2 flagi, które pomagają ograniczać wprowadzanie zmian powodujących niezgodność:
language-version X.Y
Ta flaga przywraca zmiany powodujące niezgodność do zachowania z poprzedniej wersji języka Kotlin.
Jeśli na przykład używasz Kotlin 1.7, możesz określić [ -
language-version 1.7], a nowe zmiany powodujące niezgodność nie będą już obowiązywać:
android {
kotlinOptions {
languageVersion = '1.7'
}
}
api-version X.Y
Ten flag uniemożliwia używanie nowych interfejsów API, zanim zależny kod podrzędny będzie gotowy do włączenia Kotlin 2.0.
android {
kotlinOptions {
apiVersion = '1.7'
}
}
Bardziej ukierunkowane podejście
Oprócz używania flag zgodności z Kotlinem zalecamy zapoznanie się z informacjami o wersji Kotlin i wybranie zachowań, które chcesz zachować z wersji, z której uaktualniasz. Kotlin udostępnia listę zmian powodujących niezgodność i flag, które można ustawić, aby zachować oryginalne działanie w przewodnikach zgodności dla każdej wersji: