Ta sekcja zawiera informacje o wersjach pakietu Consumer SDK na Androida.
Ogłoszenie: wstrzymanie obsługi interfejsu API na poziomach 23, 24 i 25
Zgodnie z zasadami dotyczącymi obsługi wersji mobilnego systemu operacyjnego w najbliższych głównych wersjach pakietu SDK dla konsumentów na Androida przestaniemy obsługiwać Androida 6 i 7 (poziom interfejsu API 23, 24 i 25).
Wersje pakietu Consumer SDK na Androida wydane od czwartego kwartału 2025 r. będą obsługiwać co najmniej Androida 8 (poziom API 26). Starsze wersje pakietu SDK będą nadal obsługiwać Androida 6 i 7.
Jeśli zależności nie określają numeru wersji, środowisko IDE wczyta najnowszą wersję pakietu SDK, a nowe kompilacje aplikacji nie będą obsługiwać Androida 6 i 7.
Określ wersję pakietu Consumer SDK na Androida w zależnościach kompilacji aplikacji, aby kontrolować, kiedy podniesiesz minimalną obsługiwaną wersję systemu operacyjnego dla nowych wersji aplikacji.
4.1.0 (26 maja 2026 r.)
- Ulepszenia wewnętrzne: przeniesienie wewnętrznego magazynu danych do Jetpack DataStore.
Zmiany zależności i konfiguracji
- Uaktualniono wersję zależności Kotlin do wersji 2.3.0.
- Uaktualniliśmy wtyczkę Androida do obsługi Gradle do wersji 8.13.2.
- Zaktualizowano Gradle do wersji 8.13.
- Zaktualizowano bibliotekę Desugar do wersji 2.1.5.
- Zaktualizowano pakiet Maps SDK do wersji 20.0.0 i zmieniono te zależności od podstawowych usług Google Play:
- play-services-location: 21.3.0
- play-services-tasks: 18.4.1
- play-services-common: 18.1.0
- play-services-basement: 18.1.0
- Dodano zależności Jetpack Datastore (androidx.datastore:datastore-core:1.2.0, androidx.datastore:datastore-guava:1.2.0).
4.0.0 (3 października 2025 r.)
- Ulepszenia wewnętrzne.
3.2.0 (26 czerwca 2025 r.)
- Ulepszenia wewnętrznego rejestrowania.
Zmiany zależności i konfiguracji
- Od wersji 3.2.0 pakietu Consumer SDK na Androida aplikacje muszą przejść na język Kotlin 2.1.
Poprawki błędów
- Do wewnętrznych decyzji dotyczących animacji używaj długości polilinii zamiast odległości w linii prostej.
3.1.0 (10 marca 2025 r.)
- Ulepszenia wewnętrznego rejestrowania.
3.0.0 (6 grudnia 2024 r.)
Zmiany zależności i konfiguracji
- Od wersji 3.0.0 pakietu Consumer SDK na Androida aplikacje muszą przejść na Kotlin 2.0. Zapoznaj się z przewodnikiem po migracji do pakietu Android Consumer SDK 3.0.
- Wartość targetSdk w przypadku pakietu Consumer SDK to teraz Android 14 (API na poziomie 34). Jest to wymagane w przypadku wszystkich aplikacji wdrażanych w Sklepie Google Play od sierpnia 2024 r. Zobacz Wymagania Google Play dotyczące docelowego poziomu interfejsu API.
2.99.0 (25 listopada 2024 r.)
Poprawki błędów
- Naprawia błąd ANR, który występuje, gdy wykonanie funkcji
ConsumerApi.cleanUp()trwa zbyt długo. Po zintegrowaniu wersji będzie ona wdrażana stopniowo (od 0%). - Rozwiązaliśmy problem, który powodował, że kierowcy otrzymywali błędy gRPC z kodem „INTERNAL” i komunikatem „Panic! To błąd!”. Po zintegrowaniu wersji będzie ona wdrażana stopniowo (od 0%).
2.3.0 (2 sierpnia 2024 r.)
Zmiany w interfejsie API
Dodaj obsługę definiowania stylów map w Google Cloud, która umożliwia tworzenie niestandardowych map drogowych dla użytkowników bez konieczności modyfikowania kodu aplikacji za każdym razem, gdy wprowadzasz zmianę stylu mapy. Więcej informacji znajdziesz w artykule Stylizowanie mapy za pomocą definiowania stylów map w Google Cloud.
Dodaj metodę
getServerTimeMillis()doVehicleLocation, aby określić czas, w którym Fleet Engine otrzymał informację o zmianie lokalizacji.
2.2.0 (7 maja 2024 r.)
Zmiany w interfejsie API
- Dodaliśmy interfejs API obsługujący integrację z Jetpack Compose. To funkcja eksperymentalna. Aby dowiedzieć się więcej o integracji z Jetpack Compose, skontaktuj się z przedstawicielem.
2.1.0 (17 stycznia 2024 r.)
Poprawki błędów
- Naprawiono błąd, który występował, gdy pakiet SDK był inicjowany więcej niż raz w cyklu życia aplikacji.
Zmiany w interfejsie API
- Wprowadza metodę pobierania instancji
GoogleMaputworzonej przez pakiet SDK (ConsumerGoogleMap.getGoogleMap()). - Wprowadza interfejs API do pobierania instancji
Markerutworzonych przez pakiet SDK w celu reprezentowania pojazdu (ConsumerController.getConsumerMarker()). - Wprowadzamy interfejs API do otrzymywania prognozowanych aktualizacji klienta dotyczących czasu i odległości podczas udostępniania trasy (
ProjectedRouteEta).
1.99.2 (3 listopada 2023 r.)
Naprawiono błąd, który występował, gdy pakiet SDK był inicjowany z procesu zdalnego, niezależnego od aplikacji.
Rozwiązaliśmy problem z awarią, która występuje podczas wykonywania animacji kamery, gdy nie ma wystarczającej ilości miejsca w pionie lub poziomie na dopełnienie. Występuje to tylko w przypadku najnowszego renderera map.
Rozwiązanie problemu polegającego na tym, że pierwszy odcinek podróży w obie strony jest przycinany, gdy drugi odcinek przebiega tą samą drogą.
Problemy
- Funkcja
ConsumerApi.initialize()zgłasza wyjątek, jeśli zostanie wywołana, gdy instancja interfejsu API już istnieje. Aby obejść ten problem, najpierw wywołaj funkcjęConsumerApi.getInstance()i oceń zwróconą wartośćTask, aby sprawdzić, czy instancja interfejsu API już istnieje.
2.0.0 (15 września 2023 r.)
Ogłoszenie: zmiany powodujące niezgodność
Wymagany minimalny poziom interfejsu API został zaktualizowany z 21 na 23.
Aktualizuje wymagania dotyczące wersji pakietu Maps SDK z 17.0.0 do 18.1.0.
Minimalna wymagana wersja biblioteki standardowej Kotlin została zaktualizowana z 1.6.10 na 1.9.0.
Zaktualizuj wersje zależności usług Google Play
Minimalna wymagana wersja biblioteki play-services-base została zaktualizowana z v18.0.1 do v18.2.0
Zaktualizowano minimalną wymaganą wersję biblioteki play-services-basement z 18.0.0 do 18.2.0
Zaktualizowano minimalną wymaganą wersję biblioteki play-services-location z 17.0.0 do 21.0.1
Minimalna wymagana wersja biblioteki play-services-tasks została zaktualizowana z v18.0.1 do v18.0.2
Dodaje bibliotekę androidx.room:room-runtime z ustawionym minimalnym wymaganiem dotyczącym wersji na v2.5.2
Zaktualizuj wersje tych zależności:
Minimalna wymagana wersja biblioteki android-maps-utils została zaktualizowana z v0.4.2 do v3.5.2
Minimalna wersja com.google.android.datatransport:transport-backend-cct została zmieniona z 3.0.0 na 3.1.9.
Wymagania dotyczące minimalnej wersji com.google.android.datatransport:transport-runtime zostały zaktualizowane z 3.0.1 do 3.1.9
Minimalna wymagana wersja androidx.lifecycle:lifecycle-extensions została zaktualizowana z 2.0.0 do 2.2.0
Minimalna wymagana wersja androidx.lifecycle:lifecycle-common-java8 została zaktualizowana z 2.0.0 do 2.6.1
Minimalna wymagana wersja androidx.appcompat:appcompat została zaktualizowana z v1.0.0 do v1.6.1
Minimalna wymagana wersja androidx.fragment:fragment została zmieniona z v1.0.0 na v1.6.1
Usuwa te wcześniej wycofane interfejsy API:
ConsumerTrip,ConsumerTripCallback,ConsumerTripManager,ConsumerTripOptions. Zastąpiono je elementamiTripModel,TripModelCallback,TripModelManageriTripModelOptions.Aplikacje korzystające z pakietu Consumer SDK muszą teraz mieć
targetSdkVersioninterfejs API w wersji 31 lub nowszejcompileSdkVersioninterfejs API w wersji 33 lub nowszej.Aplikacje korzystające z pakietu Consumer SDK muszą teraz włączyć obsługę biblioteki Java 8. Instrukcje aktualizacji znajdziesz na stronie https://developer.android.com/studio/write/java8-support.
Aplikacje, które korzystają z narzędzi Proguard lub Dexguard, muszą przejść na R8. Więcej informacji znajdziesz na stronie https://developer.android.com/build/shrink-code.
Aplikacje korzystające z pakietu Consumer SDK muszą włączyć usuwanie cukru. Instrukcje znajdziesz na stronie https://developer.android.com/studio/write/java8-support#library-desugaring.
Metoda
ConsumerApi.initialize()zgłasza teraz wyjątek, jeśli jest wywoływana, gdy instancja interfejsu API jest już utworzona. WartośćTaskzwrócona przezConsumerApi.getInstance()musi być używana do określania, czy wcześniej utworzono instancję interfejsu API.
Ogłoszenie: wycofanie interfejsów API
Wycofuje klasy adnotacji
Trip.TripStatusiTrip.TripType, a w ich miejsce dodaje klasy adnotacjiTripInfo.TripStatusiTripInfo.TripType.W ramach tej zmiany wycofujemy
TripModelCallback#onTripStatusUpdated(TripInfo tripInfo, @Trip.TripStatus int status)i dodajemyTripModelCallback#onTripStatusUpdate(TripInfo tripInfo, @TripInfo.TripStatus int status)w jego miejsce.W ramach tej zmiany wycofujemy
TripInfo#getTripStatus()i dodajemyTripInfo#getCurrentTripStatus()jako jego zamiennik.W ramach tej zmiany wycofujemy
TripInfo#getTripType()i dodajemyTripInfo#getCurrentTripType()jako jego zamiennik.
Wycofuje klasę
Trip.
Inne zmiany i poprawki błędów
Obsługuje żądanie najnowszego mechanizmu renderowania pakietu Maps SDK. Szczegółowe informacje znajdziesz w artykule Nowy mechanizm renderowania map.
Obsługuje zakres pakietu Maps SDK od wersji 18.1.0(włącznie) do 19.0.0(wyłącznie).
Naprawia błąd „przekroczono termin” w przypadku wewnętrznej komunikacji między pakietem SDK a backendem Google.
Rozwiązuje problem z renderowaniem na małych ekranach i w trybie obrazu w obrazie.
Przewodnik po migracji
1.99.1 (31 sierpnia 2023 r.)
Poprawki błędów
Rozwiązuje problem z awarią, która występuje, gdy aktywność lub fragment hosta pakietu SDK zostaje zniszczony.
Naprawiono błąd powodujący awarię, gdy wymiary elementu MapView wynoszą 0 (wysokość lub szerokość).
Naprawiono awarię, która występuje podczas wyświetlania lokalizacji pojazdu na polilinii trasy.
Ulepszenia
- Zapobiega awarii pakietu SDK, gdy aplikacja hosta jest wczytywana z zewnątrz i nie ma domyślnych zasobów wizualnych.
1.99.0 (22 czerwca 2023 r.)
Poprawki błędów
Rozwiązuje problem z renderowaniem na małych ekranach i w trybie obrazu w obrazie.
Naprawia migotanie pojazdu podczas udostępniania podróży.
1.2.1 (7 czerwca 2023 r.)
Poprawki błędów
- Naprawiliśmy błąd, który powodował migotanie pojazdu podczas udostępniania podróży.
1.2.0 (21 listopada 2022 r.)
Poprawki błędów
- Naprawia błąd, który powodował zgłaszanie pustego ruchu w wywołaniu zwrotnym
onTripActiveRouteTrafficUpdated.
Nowe funkcje
- Funkcja „Linie łamane uwzględniające ruch” jest już ogólnie dostępna.
1.1.2 (27 października 2022 r.)
Poprawki błędów
- Naprawiono błąd, który powodował znikanie polilinii trasy po rozpoczęciu
JourneySharingSessionwięcej niż raz w przypadkuTripModel.
Ogłoszenie: wstrzymanie obsługi Androida 5 (25 lipca 2022 r.)
W przypadku pakietu SDK w wersji 1.1.1 zapewniamy dodatkowy rok obsługi aplikacji działających na Androidzie 5, zarówno w przypadku interfejsów API na poziomach 21 i 22.
Co to oznacza:
Pakiet SDK dla konsumentów działający w Twoich aplikacjach na Androida będzie obsługiwał minimalną wersję Androida 5 (poziom API 21) do 30 czerwca 2023 r.
Po 30 czerwca 2023 roku będziemy obsługiwać tylko poziomy interfejsu API Androida 23 i nowsze. Innymi słowy, po tej dacie przestaniemy obsługiwać poziomy interfejsu Android API 21 i 22 we wszystkich wersjach pakietu SDK. Oznacza to, że błędy związane z Androidem 21 lub 22 w dowolnej wersji pakietu SDK (w tym w wersji 4.x) nie będą naprawiane i nie gwarantujemy, że pakiety SDK będą działać prawidłowo.
wersja 1.1.1 (25 lipca 2022 r.)
Zmiana zależności
- Obniża minimalny obsługiwany poziom interfejsu Android API do 21.
wersja 1.1.0 (28 kwietnia 2022 r.)
- Ulepszenia wewnętrzne.
wersja 1.0.19 (17 marca 2022 r.)
Poprawki błędów
- Naprawiono wyciek pamięci w klasie
ConsumerApi.
wersja 1.0.14 (30 listopada 2021 r.)
Minimalny obsługiwany poziom interfejsu Android API to teraz 23.
Zmiany w interfejsie API
Zmiany w klasach
ConsumerTripiConsumerTripManager.- Zmieniliśmy nazwy niektórych metod, aby były bardziej zrozumiałe i spójne z platformą iOS.
Zmiany w przypadku
ConsumerTripCallback,ConsumerTripiTripInfo.Zmieniliśmy niektóre nazwy klas, aby były zgodne z iOS. Wprowadzono interfejsy
TripModel,TirpModelManageriTripModelOptions, aby wycofać interfejsyConsumerTrip,ConsumerTripManageriConsumerTripOptions.Poprawiliśmy nazwy niektórych metod. Zmieniono lub dodano komentarze JavaDoc do metod, aby przekazywać bardziej zrozumiałe znaczenia.
Poprawiona obsługa błędów.
Dostosowywanie stylu
Wycofane starsze moduły owijające
MarkerStyleOptionsiPolylineStyleOptionszostały wycofane i zastąpione przezMarkerOptionsiPolylineOptions, które są udostępniane w pakiecie Maps SDK.
Monitorowanie awarii
Dodano wykrywanie awarii i logowanie.
- Dodaliśmy możliwość rezygnacji z tej funkcji. Zostało to zrobione w ramach szerszych działań obejmujących cały świat, które mają na celu monitorowanie awarii.
Zmiany w uwierzytelnianiu
- Usuń niepotrzebne metody z interfejsów uwierzytelniania.
- Usunięto parametr
ServiceType.
- Usunięto parametr
wersja 0.9.28 (18 maja 2021 r.)
Zmiany w interfejsie API
- Zaktualizowano wszystkie metody
ConsumerTripCallback, aby używaćTripInfojako parametru. - Dodano
ConsumerTrip.isRefreshing(), które wskazuje, czyConsumerTripaktywnie aktualizuje się o najnowsze informacje o przejazdach z Fleet Engine. - Dodano:
ConsumerTripCallback.onTripRemainingRouteDistanceUpdated(). - Dodano:
ConsumerTripCallback.onTripRemainingRouteUpdated(). - Zastąp typy zwracane przez Guavę (
ImmutableSet,ImmutableList) odpowiednikami zjava.util. Zmiany nazwy pakietu:
- com.google.android.libraries.ridesharing.common.AuthTokenContext -> com.google.android.libraries.ridesharing.consumer.auth.AuthTokenContext
- com.google.android.libraries.ridesharing.common.AuthTokenFactory -> com.google.android.libraries.ridesharing.consumer.auth.AuthTokenFactory
com.google.android.libraries.ridesharing.common.FleetEngineServiceType -> com.google.android.libraries.ridesharing.consumer.auth.FleetEngineServiceType - com.google.android.libraries.ridesharing.common.model.Trip
-> com.google.android.libraries.ridesharing.consumer.model.Trip - com.google.android.libraries.ridesharing.common.model.Vehicle -> com.google.android.libraries.ridesharing.consumer.model.Vehicle
Zmiany w implementacji
- Naprawiono sytuację wyścigu, w której pakiet SDK mógł ulec awarii w wyniku interakcji z mapą przed jej przygotowaniem.
- Pakiet SDK nie zawiera już niezaszyfrowanej kopii
io.grpc. - Naprawiliśmy błąd powodujący migotanie linii wielokątnych przedstawiających natężenie ruchu na niektórych urządzeniach. Segmenty ruchu będą teraz miały zaokrąglone końce.
wersja 0.9.15 (7 października 2020 r.)
Zmiany w interfejsie API
- Ta wersja wprowadza linie łamane uwzględniające ruch.
– Dodano
TripInfo.getActiveRouteTraffic()iTripInfo.getRemainingRouteTraffic().- Dodano ikony
ConsumerTripCallback.onTripActiveRouteTrafficUpdated()iConsumerTripCallback.onTripRemainingRouteTrafficUpdated(), aby wskazywać, kiedy nastąpiła zmiana ruchu. - Dodano
PolylineStyleOptionsdo dostosowywania ruchu (setTrafficEnabled(),setTrafficColorNoData(),setTrafficColorNormal(),setTrafficColorSlow(),setTrafficColorTrafficJam()). - Wyświetlono:
PolylineStyleOptions.TRAFFIC_Z_INDEX_ADDITION. - Dodano:
TripWaypoint.getTrafficData(). - Dodano typ danych
TrafficData. - Dodano:
ConsumerController.hideAllSessions(). FunkcjaConsumerController.showSession()nie akceptuje już wartości null jako argumentu.
- Dodano ikony
wersja 0.9.9 (15 lipca 2020 r.)
Zmiany w interfejsie API
- Jest to ważna zmiana, która wprowadza architekturę modułową z wyraźniejszą relacją między warstwą tylko z danymi (np.
ConsumerTripManager) a warstwą interfejsu użytkownika (np.JourneySharingSession). Informacje o migracji do nowej architektury znajdziesz w przewodniku po migracji do modułowej architektury. – ObiektConsumerTripjest teraz pobierany zConsumerTripManager.getTrip().- Nazwa
ConsumerTrip.unregisterCallbackzostała zmieniona naConsumerTrip.unregisterTripCallback. - Nazwa
ConsumerTrip.isCallbackRegisteredzostała zmieniona naConsumerTrip.isTripCallbackRegistered. - Dodano
ConsumerTrip.setConsumerTripOptions()iConsumerTrip.getConsumerTripOptions(). - Użytkownik
ConsumerTrip.setAutoRefreshInterval()został usunięty.
- Nazwa
- Usunięto interfejsy API do udostępniania informacji o podróży.
- Usunięto mapę gęstości pojazdów.
- Usunięto stan podglądu przejazdu.
- Usunięto stan wyboru odbioru.
- Usunięto stan wyboru miejsca odbioru.
- Usunęliśmy te typy znaczników:
SELECTED_PICKUP_POINT,SUGGESTED_PICKUP_POINT,HIGHLIGHTED_PICKUP_POINTiSELECTED_DROPOFF_POINT.
- Zmieniono
OnConsumerMarkerClickCallbackiConsumerMapReadyCallbackz interfejsów na klasy abstrakcyjne. - Dodano
ConsumerController.getCameraUpdate(),ConsumerController.isAutoCameraEnabled()iConsumerController.enableAutoCamera(). - Usunęliśmy niestandardowy przycisk FAB i powiązane z nim metody (
ConsumerController.isMyLocationFabEnablediConsumerController.setMyLocationFabEnabled).
Zmiany w implementacji
ConsumerTripCallback, niezależnie od tego, czy jest zarejestrowany zLifecycleOwner, czy bez niego, nie jest już automatycznie wyrejestrowywanyTripStatus.COMPLETEaniTripStatus.CANCELED.- Funkcja AutoCamera jest teraz domyślnie włączona i nigdy nie włącza ani nie wyłącza się sama.
Wcześniej funkcja AutoCamera była automatycznie włączana na urządzeniach
TripStatus.ARRIVED_AT_PICKUPi wyłączana, gdy użytkownik wchodził w interakcję z mapą podczas udostępniania trasy. - Wprowadziliśmy te ulepszenia animacji pojazdu podczas udostępniania podróży:
- Animacja udostępniania podróży uwzględnia teraz sytuację, w której pojazd może legalnie cofnąć się na już przejechanej trasie.
- Pojazd będzie teraz animowany w linii prostej zamiast interpolacji trasy między punktami, gdy algorytm uzna to za odpowiednie.
FINE_LOCATIONnie są już wymagane.
Inne zmiany
- Zaktualizowano te wersje zależności:
- com.google.android.datatransport:transport-api:2.2.0
- com.google.android.datatransport:transport-backend-cct:2.2.0
- com.google.android.datatransport:transport-runtime:2.2.0
wersja 0.9.1 (23 marca 2020 r.)
Zmiany w interfejsie API
- Dodano
TripInfo.getVehicleId(),TripInfo.getNumberOfPassengers(),TripInfo.getIntermediateDestinationIndex(),TripInfo.getTripActiveRoute()iTripInfo.getTripRemainingRoute(). - Dodano klasę
optionsużywaną podczas inicjowaniaConsumerApi, która umożliwia dynamiczne ustawianie adresuFleetEngine. Jeśli wywołanie interfejsu API nie zawiera wartościFleetEngine, próbuje on pobrać ją z pliku manifestu Androida lub użyć wartości domyślnej.
Ulepszenia
- Polilinia trasy nie jest wyświetlana, gdy stan przejazdu to
ARRIVED_AT_PICKUP. - Ulepszono śledzenie pojazdów poza trasą (wymaga pakietu DriverSDK w wersji 1.15):
- Śledzenie pojazdu nie przyciąga go do trasy, gdy przejeżdża on obok miejsca odbioru.
- Śledzenie pojazdu umożliwia wyświetlanie pojazdu poza drogą, np. na nieoznaczonych parkingach.
- Ikona pojazdu jest teraz aktualizowana, gdy miejsce docelowe kierowcy nie jest zgodne z miejscem docelowym w Fleet Engine.
wersja 0.8.6 (16 grudnia 2019 r.)
Zmiany w interfejsie API
Dodano:
TripInfo.getVehicleLocation().ConsumerMapViewnie jest już ostateczna.
Zmiany w implementacji
- Pozostała odległość aktywnego odcinka jest teraz obliczana na podstawie odległości serwera (zgłoszonej przez kierowcę + statycznej trasy, w stosownych przypadkach) zamiast lokalnego przyciągania. Ta zmiana zapewnia dokładniejsze wartości pozostałej odległości.
Inne zmiany
Wymagane są nowe zależności. Szczegóły znajdziesz w pliku .pom.
- com.google.android.datatransport:transport-api:2.0.0
- com.google.android.datatransport:transport-backend-cct:2.0.2
- com.google.android.datatransport:transport-runtime:2.0.0
Dodaliśmy logi dotyczące opóźnienia w przypadku próśb o przejazd.
Dodano logi błędów odpowiedzi dotyczących przejazdów.
Uwagi
- Od wersji 0.8.1 pakiet Consumer SDK na Androida jest dostarczany jako spakowane archiwum w formacie Jetified ZIP. Informacje o tym, jak cofnąć proces Jetifier, znajdziesz w artykule Jetifier: tryb odwrotny.
wersja 0.8.1 (13 września 2019 r.)
Nowe funkcje
Pomoc dotycząca ConsumerMapView.
Artefakty ODRD są teraz dostarczane w repozytorium Maven zamiast w pliku ZIP z rozszerzeniem .aar. Więcej informacji znajdziesz w artykule Dodawanie pakietu Consumer SDK do aplikacji.
Zmiany w interfejsie API
Dodano funkcję
ConsumerController.disableAutoCamera()jako przeciwieństwo funkcjicenterMapForState().VehicleLocation.getUpdateTime()zwraca teraz wartość Long reprezentującą sygnaturę czasową (w milisekundach).Uproszczono interfejs
AuthTokenFactory, aby udostępnić jedną metodę generowania tokenów. ZmienionoAuthTokenFactoryz interfejsu na klasę abstrakcyjną, aby umożliwić zgodność wsteczną w języku Java 7. Ta zmiana jest wstecznie zgodna, ale stare metody generowania pojedynczego tokena usługi zostały wycofane i zostaną ostatecznie usunięte.
Zmiany w implementacji
Komponenty są teraz wyśrodkowane względem środka ikony, co eliminuje przesunięcie cienia.
setStatedoJOURNEY_SHARING onStartTripMonitoring()zamiast czekać na stan monitorowanej podróży.Zawsze zwraca dane dotyczące pierwszej aktualizacji danych o podróży, nawet jeśli dane o podróży są niesynchronizowane.
Dodano Android Map Utils jako dostarczoną zależność.
Poprawki błędów
- Naprawiono uszkodzoną składnię eksportu ProGuard dla grpc keep.
wersja 0.7.0 (7 sierpnia 2019 r.)
Nowe funkcje
- Obsługa wielu miejsc docelowych w przypadku udostępniania trasy.
Zmiany w interfejsie API
Nowe metody dla
ConsumerTripCallback.onTripIntermediateDestinationsUpdated().onTripETAToNextTripWaypointUpdated().
Nowe metody
ConsumerController.getIntermediateDestinations().setIntermediateDestinations(List<TerminalLocation> intermediateDestinations).
Nowy
TripStatusesTripStatus.ENROUTE_TO_INTERMEDIATE_DESTINATION.TripStatus.ARRIVED_AT_INTERMEDIATE_DESTINATION.
Nowe metody pobierania
TripWaypoint.getETAMillis().getDistanceMeters().
Dodano klasę
TripInfo.TripInfomożesz uzyskać w przypadku aktywnej podróży za pomocąConsumerTripManager.getActiveTripInfo().
Dodano:
WaypointType.INTERMEDIATE_DESTINATION.Dodano:
MarkerType.TRIP_INTERMEDIATE_DESTINATION.Utworzono instancję
ConsumerMapState.JOURNEY_SHARINGz połączonych instancjiConsumerMapStatesENROUTE_TO_PICKUP,ARRIVED_AT_PICKUP,ENROUTE_TO_DROPOFFiCOMPLETE.Zaktualizowano tabelę
StateChangeCallbacks.Dodano:
onStateJourneySharing().Usunięto:
onStateWaitingForPickup(),onStateDriverArrived(),onStateEnroute()ionStateEndofTrip().
Poprawki błędów
Naprawiliśmy błąd, który powodował, że trasa nie była przycinana do lokalizacji pojazdu, gdy monitorowanie podróży rozpoczynało się w trakcie aktywnej podróży (nie na początku trasy).
Naprawiliśmy błąd polegający na tym, że wywołania zwrotne dotyczące przejazdu nie były wywoływane w przypadku słuchaczy zarejestrowanych w usłudze TripManager po tym, jak usługa TripManager pobrała już dane o podróży.
Powiększenie kamery obejmuje teraz tylko aktywną trasę i następny punkt na trasie podróży (punkt na trasie należący do podróży). Nawet jeśli pozostała część nogi jest widoczna, zoom nigdy jej nie obejmie. Wcześniej punkt odbioru był uwzględniany w powiększeniu, gdy pojazd był w drodze do miejsca odbioru lub dotarł do niego. To już nieprawda.
Ulepszenia
Wypełnij zerowy pozostały punkt trasy danymi kierowcy (lista pozostałych punktów trasy jest zwracana przez
ConsumerTripCallback.onTripRemainingWaypointsUpdatediTripInfo.getRemainingWaypoints()).Aktualizuj wszystkie pozostałe szacowane czasy dotarcia do punktów na trasie, gdy zmieni się szacowany czas dotarcia na miejsce do pierwszego punktu na trasie na liście.
Wymuszaj ponowne włączenie automatycznego aparatu tylko wtedy, gdy kierowca dotrze na miejsce odbioru. Wcześniej funkcja automatycznego ustawiania kamery była resetowana i włączana przy każdej zmianie stanu przejazdu. Automatyczne ustawianie kamery jest nadal domyślnie włączone. Automatyczne włączanie kamery nie zostanie ponownie włączone, jeśli nowy aktywny przejazd zostanie ustawiony bez nowego wywołania funkcji
startTripMonitoring().
wersja 0.6.1 (26 czerwca 2019 r.)
Nowe funkcje
- Obsługa wspólnych przejazdów w ramach udostępniania podróży.
Zmiany w interfejsie API
ConsumerController.getConsumerMapStyle()zwraca terazConsumerMapStylezamiastTask<ConsumerMapStyle>.Dodano:
PolylineStyle.setZIndex().
Poprawki błędów
Animacja trasy jest teraz wyświetlana tylko wtedy, gdy segment trasy jest zsynchronizowany, co zwiększa wygodę korzystania z aplikacji.
Rozwiązaliśmy problem z „migotaniem” pojazdu podczas interpolacji animacji, gdy aktualizacje lokalizacji kierowcy są blisko siebie.
Naprawiliśmy błąd, który powodował, że pojazd rozpoczynał podróż na początku trasy, a nie w najnowszej lokalizacji, gdy monitorowanie podróży rozpoczynało się w trakcie aktywnej podróży.
Wyświetlanie aktywnej linii łamanej trasy nad pozostałą częścią trasy, gdy się pokrywają.
Ulepszenia
- Teraz udostępniaj klasę gRPC
Statusz niezaciemnionymi metodami.
wersja 0.5.1.01 (17 maja 2019 r.)
Nowe funkcje
- Bezpośrednia obsługa udostępniania podróży.
Zmiany w interfejsie API
- Nowe zajęcia
ConsumerController.
PolylineType
| Stara wartość | Nowa wartość |
|---|---|
TRIP_PREVIEW_AUTO_ROUTE |
PREVIEW_AUTO_ROUTE |
TRIP_PREVIEW_TAXI_ROUTE |
PREVIEW_TAXI_ROUTE |
TRIP_PREVIEW_TRUCK_ROUTE |
PREVIEW_TRUCK_ROUTE |
TRIP_PREVIEW_TWO_WHEELER_ROUTE |
PREVIEW_TWO_WHEELER_ROUTE |
TRIP_ROUTE |
ACTIVE_ROUTE |
REMAINING_ROUTE |
ConsumerTripCallback
| Stara wartość | Nowa wartość |
|---|---|
onTripRouteUpdated |
onTripActiveRouteUpdated |
onTripRemainingDistanceUpdated |
onTripActiveRouteRemainingDistanceUpdated |
onTripRemainingWaypointsUpdated() |
ConsumerController
- Teraz możesz ustawiać wywołania zwrotne dla stanów bez wchodzenia w te stany.
| Metoda | Oddzwanianie |
|---|---|
startPickupSelection |
setPickupSelectionCallback |
startDropoffSelection |
setDropoffSelectionCallback |
startTripPreview |
setTripPreviewSelectionCallback |
ConsumerController.setLanguage(String languageCode)umożliwia ustawienie języka używanego w wywołaniach FleetEngine (np. w opisach punktów odbioru).
Ulepszenia
- Stan wyboru miejsca docelowego ma teraz przesuwny pinezkę.
- Usunięto animację kamery w stanie
INITIALIZE. - Tekst
ManagedChannelBuilderzostał zastąpiony tekstemAndroidChannelBuilder.