Przewodnik po migracji pakietu SDK sterownika na Androida w wersji 6.0

Migracja do interfejsu DriverStatusListener

W wersji 5 pakietu Driver SDK ogłosiliśmy wycofanie interfejsu StatusListener na rzecz interfejsu DriverStatusListener. W tym roku oficjalnie usuwamy interfejs StatusListener. Więcej informacji o StatusListener wycofaniu znajdziesz w przewodniku migracji do nowego interfejsu.

Migracja do Kotlina 2.0

Jeśli używasz pakietu Driver SDK na Androida w wersji 6.0 lub nowszej, musisz przejść na Kotlina 2.0. Na tej stronie znajdziesz wskazówki, które ułatwią przejście na nową wersję Kotlina.

Zgodność z Gradle i AGP

Kotlin 2.0 ma wymagania dotyczące minimalnej i maksymalnej wersji Gradle oraz wtyczki Androida do obsługi Gradle (AGP). Upewnij się, że Twój projekt spełnia te wymagania dotyczące Kotlina 2.0.

Minimalna wersja AGP w przypadku pakietu Driver SDK w wersji 6.0 lub nowszej

W przypadku pakietu Driver SDK w wersji 6.0 zalecamy używanie AGP w wersji 7.3 lub nowszej.

Tryb pełny R8

Pakiet Driver SDK w wersji 6 i starszych nie obsługuje trybu pełnego R8. Jeśli Twoja 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ż Kotlina 1.7 lub nowszego z pakietem SDK sterownika, powinna być możliwa aktualizacja do Kotlina 2.0 bez konieczności rozwiązywania wszystkich zmian powodujących niezgodność. Zgodność z Kotlinem dotyczy jednak tylko stabilnych funkcji języka features. Jeśli używasz funkcji alfa, beta lub eksperymentalnych w języku Kotlin, podczas aktualizacji może być konieczne wprowadzenie dodatkowych zmian.

Flagi zgodności z Kotlinem

Jak wspomnieliśmy w poprzedniej sekcji, Kotlin obsługuje podczas aktualizacji do 3 poprzednich wersji języka. Kotlin udostępnia 2 flagi, które pomagają ograniczyć niezgodności:

language-version X.Y

Ta flaga przywraca niezgodności do zachowania poprzedniej wersji Kotlina. Jeśli na przykład używasz Kotlina 1.7, możesz określić [ - language-version 1.7], a nowe niezgodności nie będą już obowiązywać:

android {
   kotlinOptions {
       languageVersion = '1.7'
   }
}
api-version X.Y

Ta flaga uniemożliwia używanie nowych interfejsów API, zanim zależny kod podrzędny będzie gotowy do włączenia Kotlina 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 Kotlina i wybranie zachowań, które chcesz zachować z wersji, z której aktualizujesz. Kotlin udostępnia listę zmian powodujących niezgodność i flag, które można ustawić, aby zachować pierwotne zachowanie w przewodnikach zgodności dla każdej wersji: