Informacje o wersji pakietu SDK sterownika na Androida

Ta sekcja zawiera informacje o wersji pakietu SDK sterownika na Androida.

Wersja 5.0.0 (12 września 2023 r.)

Zmiany zależności i konfiguracji

  • Zaktualizowano pakiet Navigation SDK do wersji 5.x.
  • Uaktualniono minSdkVersion do interfejsu API 23.
  • Uaktualniono Kotlin do wersji 1.9.0.
  • Dodano zależność od Saly.
  • Aplikacje korzystające z pakietu SDK sterownika muszą teraz mieć interfejs targetSdkVersion API w wersji 31 lub nowszej.
  • Aplikacje korzystające z pakietu SDK sterownika muszą teraz obsługiwać bibliotekę biblioteki Java 8. Instrukcje aktualizacji znajdziesz na stronie https://developer.android.com/studio/write/java8-support.
  • Aplikacje korzystające z Proguard lub Dexguard muszą przejść na wersję R8. Więcej informacji znajdziesz na stronie https://developer.android.com/build/shrink-code.
  • W aplikacjach, które używają pakietu SDK sterownika, należy włączyć funkcję deugaringu. Instrukcje znajdziesz na stronie https://developer.android.com/studio/write/java8-support#library-desugaring.

Poprawki błędów

  • Rozwiązaliśmy problem z synchronizacją DisableLocationTracking.
  • Wprowadziliśmy nowy interfejs DriverStatusListener, który zgłasza przyczynę nieprawidłowości w aktualizacjach stanu wyjątków.
  • Rozwiązano problem z nieruchomymi sterownikami (dostępny od wersji 4.99.0).

Wersja 4.99.0 (9 sierpnia 2023 r.)

  • Obsługa różnych wersji zależności NavSDK. ** Obsługa od wersji 4.5.0 do wersji 5.0.0 (ale nie do 5.0.0).
  • Zapobiegaj samoistnemu zmniejszaniu się szacowanego czasu dotarcia na miejsce, gdy pojazd się nie rusza. Ta zmiana jest wdrażana stopniowo jako eksperyment, więc nie we wszystkich aplikacjach będzie widoczna jednocześnie.

Wersja 4.5.0 (12 maja 2023 r.)

  • Zaktualizuj zależność SDK nawigacji do wersji 4.5. Pamiętaj, że identyfikatory grup i artefaktów na potrzeby pakietu SDK nawigacji uległy zmianie.

Wersja 4.4.3 (20 marca 2023 r.)

Zmiana zależności

  • Uaktualnij zależność SDK nawigacji do wersji 4.4.1.

Wersja 4.4.2 (15 lutego 2023 r.)

Poprawki błędów

  • Skrócenie czasu przywracania sieci, gdy pakiet SDK napotka tymczasowy problem z połączeniem. Ta funkcja jest obecnie wprowadzana jako eksperyment.

  • Odrzuć żądania UpdateVehicle, które zawierają tylko lokalizację „nieprzetworzoną”.

  • Napraw warunek wyścigu w interfejsie API ALFA „RouteOverview” (Omówienie trasy).

Wersja 4.4.1 (18 listopada 2022 r.)

Poprawki błędów

  • Naprawiliśmy błąd w logice przesyłania ruchu.

Dodatkowe zmiany

  • Wewnętrzne ulepszenia dotyczące nagłówków żądań i raportowania kodu stanu.

Wersja 4.4.0 (21 września 2022 r.)

Poprawki błędów

  • Usunięto błąd, który uniemożliwiał usunięcie powiadomienia „Jedź z Mapami Google”, jeśli wystąpienie interfejsu API nie zostało wyczyszczone.

Zmiana zależności

  • Uaktualnij zależność SDK nawigacji do wersji 4.2.2.

Wersja 4.3.0 (24 sierpnia 2022 r.)

Wewnętrzne usprawnienia

Ogłoszenie: blokada obsługi Androida 5 (21 lipca 2022 r.)

W najnowszej wersji pakietu SDK (4.2.0) zapewniamy dodatkowy rok obsługi aplikacji działających na Androidzie 5, zarówno na poziomach 21, jak i 22.

Co to oznacza:

  • Do 30 czerwca 2023 r. pakiety SDK do nawigacji i sterowniki SDK działające w aplikacjach na Androida będą obsługiwać co najmniej Androida 5 (poziom API 21).
  • Po 30 czerwca 2023 r. będziemy obsługiwać tylko interfejs Android API na poziomie 23 i wyższym. Oznacza to, że po tej dacie przestaniemy obsługiwać interfejsy Android API na poziomach 21 i 22 we wszystkich wersjach pakietu SDK. Oznacza to, że błędy związane z Androidem 21 i 22 w dowolnej wersji pakietu SDK (w tym 4.x) nie zostaną naprawione i nie gwarantujemy prawidłowego działania pakietów SDK.

To powiadomienie zastępuje powiadomienia o zawieszeniu systemu dotyczące Androida 21 i 22 z 21 czerwca 2021 roku, a od 18 października 2021 r. w Androidzie 23, 24 i 25 można zawieszać się aplikacji.

Wersja 4.2.0 (8 czerwca 2022 r.)

Zmiana zależności

  • Uaktualnij zależność SDK Nav do wersji 4.1.3.
  • Obniża minimalny obsługiwany poziom interfejsu Android API do 21.

Wersja 4.1.0 (28 kwietnia 2022 r.)

Aktualizacje interfejsu API

  • Zmieniono nazwę właściwości parentId obiektu Task na trackingId. Stara usługa nadal istnieje, ale została wycofana.

  • Zmieniliśmy niektóre typy zwracanych z Future na bardziej szczegółowe ListenableFuture i z List na bardziej szczegółową wartość ImmutableList.

Wersja 4.0.0 (29 listopada 2021 r.)

Minimalny obsługiwany poziom interfejsu Android API w tej wersji to 23.

Aktualizacje interfejsu API

W tej wersji pakiet SDK sterownika na Androida zawiera następujące zmiany.

Zmiana interfejsu VehicleStops API

Obiekty VehicleStop odwołują się teraz do listy obiektów TaskInfo, a nie do listy obiektów Task. Jeśli potrzebujesz stanu zadania, zachęcamy do śledzenia go w kodzie aplikacji.

  • Dodano nowe zajęcia: TaskInfo

  • Funkcja getTasks obiektu VehicleStop zastąpiono funkcją getTaskInfoList.

  • Funkcja setTasks obiektu VehicleStop.Builder zastąpiono funkcją setTaskInfoList.

Monitorowanie awarii

Aby zwiększyć stabilność pakietu SDK, dodaliśmy monitorowanie awarii i raportowanie. Ta funkcja jest domyślnie włączona, ale możesz ją wyłączyć, wywołując funkcję setAbnormalTerminationReportingEnabled() i przekazując jej wartość false przed zainicjowaniem pakietu SDK.

Asynchroniczne pobieranie pozostałych pojazdów

Uwierzytelnianie

Usunęliśmy niepotrzebne usługi z interfejsu AuthTokenContext. Interfejs ServiceType został wycofany. Teraz musisz otrzymywać roszczenia tylko z uwzględnieniem podanego identyfikatora pojazdu i identyfikatora zadania, zamiast korzystać z systemu ServiceType.

18 października 2021 r. – wstrzymanie obsługi interfejsów API poziomów 23, 24 i 25

Przeczytaj ogłoszenie z 18 października

W związku ze zmianami w zależnościach wewnętrznych interfejsy API Androida na poziomie 23, 24 i 25 (Android 6, 7.0 i 7.1) nie będą obsługiwane w nowych wersjach pakietów SDK nawigacji i sterowników na Androida od trzeciego kwartału 2022 r.

Pakiet SDK do nawigacji i sterowników na Androida wydany w trzecim kwartale 2022 r. będzie obsługiwać tylko urządzenia z interfejsem API Androida na poziomie 26 lub wyższym.

Wersje aplikacji utworzone na podstawie pakietów SDK nawigacji i sterowników na Androida w wersji 4.x lub starszej będą nadal działać na urządzeniach z interfejsem API Androida na poziomie 25 lub starszym.

Wersja 3.0.4 (28 lipca 2021 r.)

Funkcje

W tej wersji pakiet SDK sterownika został oficjalnie oddzielony od SDK nawigacji. Szczegółowe informacje znajdziesz w przewodniku po migracji.

Aktualizacje interfejsu API

Dodano te metody:

DeliveryDriverApi.getDriverSdkVersion()

Stabilność i poprawki błędów

Zgłoś błędy (PERMISSION_DENIED) zamiast klasyfikować je jako błędy połączenia.

Ogłoszenie o wycofaniu (21 czerwca 2021 r.)

W tym ogłoszeniu opisano wycofanie pakietu SDK sterownika na Androida i pakietu SDK nawigacji na Androida w dniu podanym powyżej. Wysłaliśmy to powiadomienie jako obowiązkowe powiadomienie do klientów, których dotyczy ta zmiana.

Aby uprościć integrację klientów i przyspieszyć oferowanie przydatnych funkcji, dzielimy pakiety Navigation SDK na Androida i Driver SDK na Androida na dwa różne pliki binarne:

  • SDK nawigacji na Androida, który zapewnia kierowcom funkcje nawigacji i wyznaczania tras.
  • Driver SDK na Androida, który umożliwia wykorzystanie stanowych usług internetowych Fleet Engine na potrzeby postępów i przydzielania zadań lub przejazdów.

Pamiętaj, że w przypadku podstawowych funkcji routingu pakiet SDK sterownika na Androida wymaga uzależnienia od pakietu SDK nawigacji na Androida.

Jakie to zmiany?

Najważniejsze zmiany w wersji 3 to:

  • Dwa pliki binarne zamiast jednego.
  • Bardziej przejrzyste definicje pakietów SDK sterowników dla klas Androida.
  • Pakiet nawigacji na Androida zawiera pakiet Maps SDK na Androida (wraz z pakietem Navigation SDK na Androida w wersji 2).
    • Dzięki temu mapy i funkcje nawigacyjne mogą współistnieć na tej samej mapie (np. rysowanie linii łamanych w widoku nawigacyjnym) oraz zmniejszenie wykorzystania pamięci, ponieważ używana jest jedna mapa, a nie dwie.
    • Pakiet Navigation SDK na Androida 3.0 nie jest w pełni spójny z pakietem nawigacji na Androida. Wersja 3.2 pozwala rozwiązać większość problemów. Więcej informacji znajdziesz w sekcji Co mogę zrobić i kiedy?.
  • Logowanie, które ułatwi nam debugowanie możliwych problemów.

Poniższe metody również zostały usunięte w wersji 3. Są one wcześniej oznaczone jako wycofane i istnieją już alternatywne rozwiązanie:

  • Poniższe metody pakietu Nav/Driver SDK zostały wycofane z wersji 1.16, udostępnione 10 sierpnia 2020 r. i usunięte w wersji 3.0:
    • Waypoint#fromLatLng(*)
    • Waypoint#fromPlaceId(*)
    • Navigator#startGuidance(resumeIntent)
    • NavigationApi#initForegroundServiceManager(*)
  • Aby zwiększyć kompletność i jasność przekazu, zwróć uwagę, że w przejściu z wersji 1 na 2 usunęliśmy wiele metod. Większość z nich stanowiła konsolidację zduplikowanych klas pakietu Navigation SDK na Androida i pakietu Maps SDK na Androida. Zapoznaj się z przewodnikiem po migracji, aby lepiej zrozumieć te zmiany.

Pakiet Driver SDK na Androida i pakiet Navigation SDK na Androida do wersji 1.x

Pakiet SDK Nav/Driver SDK w wersji 1 został wprowadzony w 2018 roku. Ponieważ wkrótce wprowadzimy wersję 3, nadszedł czas na jej wycofanie, aby uniknąć problemów z obsługą wielu wersji głównych.

Zaoszczędzony w ten sposób czas pozwoli nam lepiej obsługiwać najnowszą wersję główną i tworzyć więcej funkcji ważnych dla naszych klientów.

Z tego powodu pakiet Nav/Driver SDK w wersji 1.x został wycofany i po 21 czerwca 2022 r. nie będzie już utrzymywany.

Poświęć chwilę, aby zobaczyć, jak działa wycofywanie wersji pakietu SDK.

Przeczytaj odwołane ogłoszenie

Nadchodząca wersja 4.0 pakietu Navigation SDK na Androida i pakietu Driver SDK na Androida będzie obsługiwać co najmniej [Android 6.0 (poziom interfejsu API 23)](https://developer.android.com/studio/releases/platforms#6.0){: .external}. Minimalna obsługiwana obecnie wersja to Android 5.0 (poziom API 21). Przewidujemy, że wersja 4.0 zostanie udostępniona w IV kwartale 2021 r. Oznacza to, że:

  • Wersje aplikacji utworzone na podstawie wersji starszych niż 4.x będą nadal działać na urządzeniach z Androidem 21 i 22. Aplikacje sterowników, które zawierają nasze obecne pakiety SDK, będą nadal działać na urządzeniach z Androidem w wersji 21 lub nowszej. Działa tak samo jak wcześniej.
  • Wersje aplikacji stworzone z użyciem pakietu Driver SDK na Androida i nawigacji SDK na Androida w wersji 4.x (nastawione na kierowanie na IV kwartał 2021 r., mogą ulec zmianie) i późniejsze nie będzie można instalować na urządzeniach z Androidem 21 i 22. Wersje 4.x będą działać na Androidzie w wersji co najmniej 6.0 (poziom interfejsu API 23), dlatego nie będzie można korzystać z wersji 2 i nowszych wersji aplikacji, w przypadku których zainstalowany przez nas sterownik będzie dostępny tylko w wersji 4.

Wersje pakietu Navigation SDK na Androida (wersja 3) i pakietu SDK sterownika na Androida 3, które chcesz uaktualnić, zostały opisane w tabeli poniżej wraz z informacją, kiedy staną się one dostępne.

Z których funkcji platformy sterowników korzystasz? Czy korzystasz z tych funkcji? Pierwsze dostępne wersje, na które warto przejść, to... Oczekiwana dostępność
(może się zmienić)
Linki do migracji
Tylko nawigacja
(metody NavSDK)
Nie NavSDK w wersji 3.0.1 Teraz Przewodnik
Tak NavSDK w wersji 3.5 (prognozowane) wrzesień 2021 r.
Nawigacja i śledzenie Fleet Engine (metody NavSDK i DriverSDK) Nie Pakiet Nav SDK 3.0 i Driver SDK 3.0 Przewodnik po migracji sterownika do wersji 3.0 jest dostępny w wersji 3.0
Tak NavSDK w wersji 3.x i DriverSDK w wersji 3.0

Aby nadal korzystać z usuniętych metod, możesz pozostać przy wersji 1.x, ale po 21 czerwca 2022 r. nie będziesz mieć możliwości uzyskania pomocy ani konserwacji (patrz sekcja poniżej).

Zalecamy przejście na wersję 3.x. Oznacza to, że:

* Ostatnia wersja wersji 1.x pojawi się w IV kwartale 2021 r. (dlatego wersja 1 będzie od tego momentu „zablokowana”).

* Ta ostatnia wersja może być zainstalowana przez 6 miesięcy, do 21 czerwca 2022 r. Po upływie tego czasu nie będziemy w stanie odpowiadać na błędy ani prośby o dodanie funkcji w wersji 1.x.

Poświęć chwilę na zapoznanie się z poniższą tabelą oraz [przewodnikiem po migracji](/maps/documentation/navigation-sdk-android/v2/migration), aby pomóc Ci w odniesieniu się do tych zmian.

Do kiedy mogę to zrobić?

Jeśli używasz obecnie... Czy korzystasz z tych funkcji? Aby uaktualnić teraz Aby przejść na wyższą wersję we wrześniu 2021 r. Linki do migracji
Wersja 1.x
(nie wykorzystująca funkcji FleetEngine.java / sterownika)
Nie NavSDK w wersji 3.0 Przewodnik
Tak Brak takiej opcji NavSDK 3.x
Wersja 1.x
(przy użyciu funkcji FleetEngine.java / sterownika)
Nie Brak takiej opcji NavSDK 3.x i
DriverSDK 3.x
Powyższy przewodnik oraz przewodnik po migracji sterowników do wersji 3.0 dostępny w wersji produkcyjnej.
Tak

Zalecamy powiadomienie kierowców na urządzeniach z Androidem 21 i 22 w celu uaktualnienia do nowszej wersji (co najmniej 6.0) przed zintegrowaniem z aplikacją sterowników pakietu SDK Driver SDK na Androida i pakietu Navigation SDK na Androida w wersji 4.x lub nowszej.

Wersja 1.15.3 (9 października 2020 r.)

Aktualizacje interfejsu API

  • Pakiet Driver SDK subskrybuje teraz pakiet Navigation SDK na potrzeby powiadomień o ruchu, które są wysyłane do interfejsu Fleet Engine API.

Stabilność i poprawki błędów

  • Usunięto awarię środowiska wykonawczego gRPC.

v1.15.2

Funkcje

Dodano możliwość zatrzymania trwałego powiadomienia. Jeśli raportowanie lokalizacji w instancji Fleet Engine zostanie zatrzymane, wskazówki w Navigator zostaną zatrzymane, wszystkie detektory nawigacji zostaną wyrejestrowane, a funkcja NavigationFragment lub NavigationView zostanie wstrzymana.

Stabilność i poprawki błędów

  • Naprawiono błąd, który powodował zgłaszanie wyjątku w przypadku wyczyszczenia instancji Fleet Engine.

Wersja 1.15.1 (12 maja 2020 r.)

Funkcje

Wstępna analiza danych w wersji 1.15.0 wykazała istotne ulepszenia w raportowaniu stabilnych lokalizacji (redukcja „utkniętych” lokalizacji). Ta poprawka umożliwia kontynuowanie ulepszonego raportowania lokalizacji. Problem ANR nie był związany z tymi ulepszeniami.

Stabilność i poprawki błędów

  • Naprawiliśmy błąd, który czasami powodował, że w aplikacji dla użytkowników wyświetlała się linia prosta na początku trasy.
  • Naprawiliśmy błąd, który mógł powodować błąd ANR podczas zgłaszania lokalizacji przez pakiet SDK. Spowodowało to wprowadzenie onArrival() ulepszeń, które mogły zablokować rywalizację. W pewnych okolicznościach udało nam się odtworzyć błędy ANR i upewnić się, że poprawki rozwiązały problem. Zmodyfikowana aplikacja testowa, która generuje błędy ANR, działała przez 8 godzin bez błędów ANR po naprawieniu błędu.

Wersja 1.15.0 (23 marca 2019 r.)

Funkcje

  • Wprowadzenie stanu wskazówek nawigacyjnych przy rozpoczęciu i pojazdu z trasy oraz zdarzeń przyjazdu, aby poprawić śledzenie lokalizacji pojazdu.
  • Dodaliśmy możliwość pobierania lokalizacji wydzielonych na drogach niezależnie od stanu nawigacji.
  • Dodaliśmy dodatkowe informacje o lokalizacjach wcześniej dodanych do drogi, np. o dokładności.

Poprawki związane ze stabilnością i błędami

  • Zwiększono wartość minSdkVersion dla pakietu navsdk do 19.
  • Naprawiono błąd, który powodował, że nazwy punktów Waypoint na poziomie i szerokości geograficznej nie były uznawane za nieprawidłowe odwrotne geokodowanie po stronie serwera.

Wersja 1.14.2 (2 lutego 2019 r.)

Funkcje

  • Uniemożliwia pakietowi DriverSDK wysyłanie 0,0 lokalizacji do Fleet Engine (lepsze udostępnianie trasy i dane wejściowe przydzielania lokalizacji).
  • Dodatkowe logowanie poprawiające problemy z utkniętą lokalizacją i zmniejszające liczbę ponownych prób udostępnienia trasy.
  • Jeśli się nie zmieni, zignoruj powtarzające się wywołania funkcji setLocationReportingInterval().
  • Zaktualizowano plik javadocs metody setReportingInterval(), aby zapobiec powtarzaniu się tej metody z dużą częstotliwością w porównaniu z używanymi przedziałami czasu.
  • Zwiększono niezawodność lokalizacji w interfejsie API 29.

v1.13.0

Stabilność i poprawki błędów

  • Dodaje zależność od okhttp, którą klienci będą musieli dodać do swoich kompilacji Gradle.

Wersja 1.11.7 (18 października 2019 r.)

Stabilność i poprawki błędów

  • Lokalizacja jest aktualizowana po uruchomieniu onArrival() w przypadku danego miejsca docelowego.
  • Powiadomienie domyślne (ciąg stały w trybie Free Nav) pasuje do schematu kolorów powiadomień nawigacyjnych. Więcej informacji znajdziesz w artykule o udostępnionych trwałych powiadomieniach.
  • Rozwiązaliśmy problem, który powodował, że zdarzenie opóźnionej aktualizacji lokalizacji mogło powodować nieuzasadnioną aktualizację lokalizacji, powodując artefakty takie jak linia prosta na początku trasy.

Wersja 1.11.6 (4 października 2019 r.)

Aktualizacje interfejsu API

  • Wprowadzono serię zmian, które zapewnią, że pakiet SDK sterowników szybko wznowi aktualizacje lokalizacji po awarii sieci. Po przywróceniu połączenia sieciowego aktualizowanie lokalizacji rozpocznie się ponownie podczas następnej zaplanowanej aktualizacji lokalizacji.

Stabilność i poprawki błędów

  • setVehicleState() zwraca teraz natychmiast. Aktualizowanie FleetEngine odbywa się teraz w wątku w tle. Rozwiązano problem ANR (Application Not Responding).
  • Rozwiązaliśmy problem, który powodował wyświetlanie tras udostępniania przejazdu w postaci linii prostej przy użyciu starszych wersji pakietu Consumer SDK. Zapewnia to, że pakiet SDK sterownika nie dodaje do trasy żadnych jednorazowych punktów pośrednich.