Informacje o wersji pakietu Consumer SDK na Androida

Ta sekcja zawiera informacje o wersjach pakietu Consumer SDK na Androida.

Ogłoszenie: wstrzymanie obsługi poziomów API 23, 24 i 25

Zgodnie z zasadami dotyczącymi obsługi wersji mobilnego systemu operacyjnego w przypadku nadchodzących głównych wersji pakietu Consumer SDK 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 nadal będą obsługiwać Androida 6 i 7.

Jeśli zależności nie określają numeru wersji, 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 podnosisz minimalną obsługiwaną wersję systemu operacyjnego dla nowych wersji aplikacji.

4.0.0 (3 października 2025 r.)

  • Ulepszenia wewnętrzne.

3.2.0 (26 czerwca 2025 r.)

  • Wewnętrzne ulepszenia logowania.

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.)

  • Wewnętrzne ulepszenia logowania.

3.0.0 (6 grudnia 2024 r.)

Zmiany zależności i konfiguracji

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 wdrożymy tę funkcję stopniowo (zaczynając 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 wdrożymy tę funkcję stopniowo (zaczynając 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 Definiowanie stylów map w Google Cloud.

  • Dodaj metodę getServerTimeMillis() do VehicleLocation, aby określić czas, w którym Fleet Engine otrzymał aktualizację lokalizacji.

2.2.0 (7 maja 2024 r.)

Zmiany w interfejsie API

  • Dodano 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

  • Naprawia błąd, który występuje, gdy pakiet SDK jest inicjowany więcej niż raz w cyklu życia aplikacji.

Zmiany w interfejsie API

  • Wprowadza metodę pobierania instancji GoogleMap utworzonej przez pakiet SDK (ConsumerGoogleMap.getGoogleMap()).
  • Wprowadza interfejs API do pobierania instancji Marker utworzonych 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 przejazdu (ProjectedRouteEta).

1.99.2 (3 listopada 2023 r.)

  • Naprawiono błąd powodujący awarię, gdy pakiet SDK jest inicjowany z procesu zdalnego, oddzielonego 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 w poziomie na dopełnienie. Występuje to tylko w przypadku najnowszego renderowania map.

  • Rozwiązanie problemu polegającego na tym, że pierwszy odcinek podróży z przesiadką jest skracany, gdy drugi odcinek przebiega tą samą drogą.

Problemy

  • Metoda 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 na 18.1.0.

  • Minimalna wymagana wersja biblioteki standardowej Kotlin została zaktualizowana z 1.6.10 na 1.9.0.

  • Aktualizowanie wersji zależności Usług Google Play

    • Minimalna wymagana wersja biblioteki play-services-base została zaktualizowana z 18.0.1 do 18.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 wersji 3.0.1 do wersji 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 zaktualizowana z v1.0.0 do v1.6.1

  • Usuwa te wcześniej wycofane interfejsy API: ConsumerTrip, ConsumerTripCallback, ConsumerTripManager, ConsumerTripOptions. Zostały one zastąpione przez TripModel, TripModelCallback, TripModelManagerTripModelOptions.

  • Aplikacje korzystające z pakietu Consumer SDK muszą teraz mieć targetSdkVersioninterfejs API w wersji 31 lub nowszejcompileSdkVersion albo interfejs 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 używają 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ć desugaring. 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 została już utworzona. Task zwrócony przez ConsumerApi.getInstance() musi być użyty do określenia, czy wcześniej utworzono instancję interfejsu API.

Ogłoszenie: wycofanie interfejsów API

  • Wycofuje klasy adnotacji Trip.TripStatusTrip.TripType, a w ich miejsce dodaje klasy adnotacji TripInfo.TripStatusTripInfo.TripType.

    • W ramach tej zmiany wycofujemy TripModelCallback#onTripStatusUpdated(TripInfo tripInfo, @Trip.TripStatus int status) i dodajemy TripModelCallback#onTripStatusUpdate(TripInfo tripInfo, @TripInfo.TripStatus int status), aby go zastąpić.

    • W ramach tej zmiany wycofujemy TripInfo#getTripStatus() i dodajemy TripInfo#getCurrentTripStatus() jako jego zamiennik.

    • W ramach tej zmiany wycofujemy TripInfo#getTripType() i dodajemy TripInfo#getCurrentTripType() jako jego zamiennik.

  • Wycofuje klasę Trip.

Inne zmiany i poprawki błędów

  • Obsługuje żądanie najnowszego mechanizmu renderowania pakietu Maps SDK. Więcej informacji znajdziesz w sekcji Nowy moduł renderowania map.

  • Obsługuje zakres pakietu SDK Map Google 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 zostaną zniszczone.

  • 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 wielolinii trasy.

Ulepszenia

  • Zapobiega awarii pakietu SDK, gdy aplikacja hosta jest wczytywana z zewnątrz, a domyślne zasoby wizualne nie są obecne.

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.

  • Poprawki migotania 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

  • Naprawiono błąd, który powodował zgłaszanie pustego ruchu w wywołaniu zwrotnym onTripActiveRouteTrafficUpdated.

Nowe funkcje

  • Funkcja „Linie łamane uwzględniające natężenie ruchu” 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 JourneySharingSession więcej niż raz w przypadku TripModel.

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 aplikacjach na Androida będzie obsługiwał co najmniej 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 API Androida 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 zostaną naprawione 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

  • Naprawiliśmy 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 ConsumerTripConsumerTripManager.

    • Zmieniliśmy nazwy niektórych metod, aby były bardziej zrozumiałe i zgodne z platformą iOS.
  • Zmiany w usługach ConsumerTripCallback, ConsumerTripTripInfo.

    • Zmieniliśmy nazwy niektórych klas, aby były zgodne z iOS. Wprowadzono interfejsy TripModel, TirpModelManagerTripModelOptions, aby wycofać interfejsy ConsumerTrip, ConsumerTripManagerConsumerTripOptions.

    • Uporządkowano nazwy niektórych metod. Poprawione lub dodane komentarze JavaDoc do metod, aby przekazywać jaśniejsze znaczenia.

    • Ulepszona obsługa błędów.

Dostosowywanie stylu

  • Wycofane starsze kody

    • MarkerStyleOptionsPolylineStyleOptions zostały wycofane i zastąpione przez MarkerOptionsPolylineOptions, które są udostępniane w pakiecie Maps SDK.

Monitorowanie awarii

  • Dodaliśmy wykrywanie awarii i rejestrowanie.

    • Dodaliśmy możliwość wyłączenia tej funkcji. Zostało to zrobione w ramach szerszych działań w zakresie monitorowania wypadków na całym świecie.

Zmiany uwierzytelniania

  • Usuń niepotrzebne metody z interfejsów uwierzytelniania.
    • Usunięto parametr ServiceType.

v0.9.28 (18 maja 2021 r.)

Zmiany w interfejsie API

  • Zaktualizowano wszystkie metody ConsumerTripCallback, aby używały parametru TripInfo.
  • Dodano parametr ConsumerTrip.isRefreshing(), który wskazuje, czy ConsumerTrip aktywnie aktualizuje się o najnowsze informacje o przejazdach z Fleet Engine.
  • Dodano: ConsumerTripCallback.onTripRemainingRouteDistanceUpdated().
  • Dodano: ConsumerTripCallback.onTripRemainingRouteUpdated().
  • Zastąp typy zwracane Guavy (ImmutableSet, ImmutableList) odpowiednikami klas java.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 związany z migotaniem 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

  • W tej wersji wprowadziliśmy wielolinie uwzględniające ruch. – Dodano TripInfo.getActiveRouteTraffic()TripInfo.getRemainingRouteTraffic().
    • Dodano symbole ConsumerTripCallback.onTripActiveRouteTrafficUpdated()ConsumerTripCallback.onTripRemainingRouteTrafficUpdated(), aby wskazywać, kiedy zmieniło się natężenie ruchu.
    • Dodano PolylineStyleOptions do dostosowywania ruchu (setTrafficEnabled(), setTrafficColorNoData(), setTrafficColorNormal(), setTrafficColorSlow(), setTrafficColorTrafficJam()).
    • Wyświetlono: PolylineStyleOptions.TRAFFIC_Z_INDEX_ADDITION.
    • Dodano: TripWaypoint.getTrafficData().
    • Dodano typ danych TrafficData.
    • Dodano: ConsumerController.hideAllSessions(). Funkcja ConsumerController.showSession() nie akceptuje już wartości null jako argumentu.

wersja 0.9.9 (15 lipca 2020 r.)

Zmiany w interfejsie API

  • Jest to duża 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 architektury modułowej. – Obiekt ConsumerTrip jest teraz pobierany z ConsumerTripManager.getTrip().
    • Nazwa ConsumerTrip.unregisterCallback została zmieniona na ConsumerTrip.unregisterTripCallback.
    • Nazwa ConsumerTrip.isCallbackRegistered została zmieniona na ConsumerTrip.isTripCallbackRegistered.
    • Dodano: ConsumerTrip.setConsumerTripOptions()ConsumerTrip.getConsumerTripOptions().
    • Użytkownik ConsumerTrip.setAutoRefreshInterval() został usunięty.
  • Usunięto interfejsy API do udostępniania informacji o podróży.
    • Usunięto mapę gęstości pojazdów.
    • Usunięto stan podglądu podróży.
    • 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_POINTSELECTED_DROPOFF_POINT.
  • Zmieniono OnConsumerMarkerClickCallbackConsumerMapReadyCallback z interfejsów na klasy abstrakcyjne.
  • Dodano ConsumerController.getCameraUpdate(), ConsumerController.isAutoCameraEnabled() i ConsumerController.enableAutoCamera().
  • Usunięto niestandardowy przycisk FAB i powiązane z nim metody (ConsumerController.isMyLocationFabEnabledConsumerController.setMyLocationFabEnabled).

Zmiany w implementacji

  • ConsumerTripCallback, niezależnie od tego, czy jest zarejestrowany z LifecycleOwner, czy bez niego, nie jest już automatycznie wyrejestrowywany TripStatus.COMPLETE ani TripStatus.CANCELED.
  • Funkcja AutoCamera jest teraz domyślnie włączona i nigdy nie włącza ani nie wyłącza się sama. Wcześniej funkcja AutoCamera automatycznie włączała się ponownie poTripStatus.ARRIVED_AT_PICKUP i wyłączała, gdy użytkownik wchodził w interakcję z mapą podczas udostępniania trasy.
  • Wprowadziliśmy te ulepszenia animacji pojazdu podczas udostępniania trasy:
    • Animacja udostępniania trasy uwzględnia teraz sytuację, w której pojazd może legalnie cofnąć się na już przejechaną trasę.
    • Pojazd będzie teraz animowany w linii prostej zamiast interpolacji trasy między punktami, gdy algorytm uzna to za odpowiednie.
  • Uprawnienia FINE_LOCATION nie 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 użytkowników TripInfo.getVehicleId(), TripInfo.getNumberOfPassengers(), TripInfo.getIntermediateDestinationIndex(), TripInfo.getTripActiveRoute() i TripInfo.getTripRemainingRoute().
  • Dodano klasę options używaną podczas inicjowania ConsumerApi, która umożliwia dynamiczne ustawianie adresu FleetEngine. Jeśli wywołanie interfejsu API nie zawiera wartości FleetEngine, próbuje on pobrać ją z pliku manifestu Androida lub użyć wartości domyślnej.

Ulepszenia

  • Linia trasy nie jest wyświetlana, gdy stan podróży toARRIVED_AT_PICKUP.
  • Ulepszone ś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 go 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().

  • ConsumerMapView nie 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 pozwala uzyskać 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
  • Dodano logi dotyczące czasu oczekiwania na prośbę o przejazd.

  • Dodano logi błędów odpowiedzi dotyczących podróży.

Uwagi

  • Od wersji 0.8.1 pakiet Consumer SDK na Androida jest dostarczany jako spakowane archiwum Jetified. Informacje o tym, jak to zrobić, znajdziesz w artykule Jetifier: tryb odwrotny.

Wersja 0.8.1 (13 września 2019 r.)

Nowe funkcje

Zmiany w interfejsie API

  • Dodano funkcję ConsumerController.disableAutoCamera() jako przeciwieństwo funkcji centerMapForState().

  • VehicleLocation.getUpdateTime() zwraca teraz wartość typu Long, która reprezentuje sygnaturę czasową (w milisekundach).

  • Uprościliśmy interfejs AuthTokenFactory, aby udostępnić jedną metodę generowania tokenów. Zmieniono AuthTokenFactory z interfejsu na klasę abstrakcyjną, aby umożliwić zgodność wsteczną w Java7. Ta zmiana jest wstecznie kompatybilna, ale stare metody generowania pojedynczego tokena usługi zostały wycofane i zostaną ostatecznie usunięte.

Zmiany w implementacji

  • Zasoby są teraz wyśrodkowane względem środka ikony, co eliminuje przesunięcie cienia.

  • setState na JOURNEY_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 nieprawidłową 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 TripStatuses.

    • TripStatus.ENROUTE_TO_INTERMEDIATE_DESTINATION.
    • TripStatus.ARRIVED_AT_INTERMEDIATE_DESTINATION.
  • Nowe metody pobierania TripWaypoint.

    • getETAMillis().
    • getDistanceMeters().
  • Dodano klasę TripInfo.

    • TripInfo możesz uzyskać w przypadku aktywnej podróży za pomocą ConsumerTripManager.getActiveTripInfo().
  • Dodano: WaypointType.INTERMEDIATE_DESTINATION.

  • Dodano: MarkerType.TRIP_INTERMEDIATE_DESTINATION.

  • Utworzono ConsumerMapState.JOURNEY_SHARING z połączonych ConsumerMapStates ENROUTE_TO_PICKUP, ARRIVED_AT_PICKUP, ENROUTE_TO_DROPOFFCOMPLETE.

    • Zaktualizowano tabelę StateChangeCallbacks.

    • Dodano: onStateJourneySharing().

    • Usunięto: onStateWaitingForPickup(), onStateDriverArrived(), onStateEnroute()onStateEndofTrip().

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).

  • Rozwiązaliśmy problem, który powodował, że wywołania zwrotne dotyczące przejazdu nie były wywoływane w przypadku odbiorców zarejestrowanych w usłudze TripManager po tym, jak usługa TripManager pobrała już dane przejazdu.

  • 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 noga jest widoczna, powiększenie nigdy jej nie obejmie. Wcześniej punkt odbioru był uwzględniany w powiększeniu, gdy pojazd był w drodze do miejsca odbioru lub gdy do niego dotarł. To już nie jest prawdą.

Ulepszenia

  • Wypełnij zerowy pozostały punkt trasy danymi kierowcy (lista pozostałych punktów trasy jest zwracana przez ConsumerTripCallback.onTripRemainingWaypointsUpdatedTripInfo.getRemainingWaypoints()).

  • Aktualizuj wszystkie pozostałe szacowane czasy dotarcia do punktów pośrednich, gdy zmieni się szacowany czas dotarcia do pierwszego punktu pośredniego na liście.

  • Wymuś ponowne włączenie automatycznego aparatu tylko wtedy, gdy kierowca dotrze na miejsce odbioru. Wcześniej automatyczne ustawianie kamery było resetowane i włączane przy każdej zmianie stanu podróży. 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 podwózki w przypadku udostępniania podróży.

Zmiany w interfejsie API

  • ConsumerController.getConsumerMapStyle() zwraca teraz ConsumerMapStyle zamiast Task<ConsumerMapStyle>.

  • Dodano: PolylineStyle.setZIndex().

Poprawki błędów

  • Animacja trasy jest teraz wyświetlana tylko wtedy, gdy segment trasy jest zsynchronizowany, co poprawia wygodę użytkownika.

  • Rozwiązaliśmy problem z „migotaniem” pojazdu podczas interpolacji animacji, gdy aktualizacje lokalizacji kierowcy są blisko siebie.

  • Naprawiono 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świetlaj linię łamaną aktywnej trasy nad pozostałą częścią trasy, gdy się pokrywają.

Ulepszenia

  • Teraz udostępniamy klasę gRPC Status z niezaciemnionymi metodami.

wersja 0.5.1.01 (17 maja 2019 r.)

Nowe funkcje

  • Obsługa udostępniania trasy.

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 wpisywania stanu.
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 przypadku opisów punktów odbioru).

Ulepszenia

  • Stan wyboru miejsca odbioru ma teraz przesuwny pinezkę.
  • Usunięto animację kamery w stanie INITIALIZE.
  • Tekst ManagedChannelBuilder został zamieniony na AndroidChannelBuilder.