Migracja do Kotlin 2.0
Jeśli używasz pakietu Consumer SDK na Androida w wersji 3.0 lub nowszej, musisz uaktualnić go do wersji Kotlin 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). Sprawdź, czy Twój projekt spełnia te wymagania dotyczące Kotlin 2.0.
Minimalna wersja AGP dla pakietu SDK dla konsumentów w wersji 3.0 lub nowszej
Pakiet Consumer SDK 3.0 wymaga używania 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 aplikacja jest kierowana na AGP w wersji 8.0 lub nowszej, musisz wyraźnie wyłączyć tryb pełny R8.
# settings.gradle
android.enableR8.fullMode=false
Zgodność wersji Kotlina
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 wersję 2.0 bez konieczności rozwiązywania wszystkich problemów związanych ze zmianami powodującymi 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ć zmiany powodujące problemy:
wersja językowa X.Y
Ten flag przywraca zmiany powodujące niezgodność do zachowania z poprzedniej wersji Kotlina.
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 dotyczących zgodności dla każdej wersji:
- Przewodnik po zgodności w wersji 1.8
- Przewodnik po zgodności z wersją 1.9
- Przewodnik zgodności z wersją 2.0