Ta sekcja zawiera informacje o wersji pakietu Consumer SDK na Androida.
Ogłoszenie: zawieszenie obsługi poziomu interfejsu API 23, 24 i 25
Zgodnie z zasadami obsługi wersji systemu operacyjnego mobilnego w przyszłych głównych wersjach pakietu Consumer SDK na Androida zaprzestajemy 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). Wcześniejsze wersje pakietu SDK będą nadal obsługiwać Androida 6 i 7.
Jeśli zależności nie określają numeru wersji, IDE wczyta najnowszą wersję pakietu SDK, a nowe wersje aplikacji nie będą obsługiwać Androida 6 i 7.
W zależnościach kompilacji aplikacji określ wersję pakietu Consumer SDK na Androida, aby kontrolować, kiedy zwiększać minimalną wersję obsługiwanego systemu operacyjnego w przypadku nowych wersji aplikacji.
3.0.0 (6 grudnia 2024 r.)
Zmiany zależności i konfiguracji
- Od wersji 3.0.0 pakietu SDK dla konsumentów na Androida aplikacje muszą zostać zaktualizowane do wersji Kotlin 2.0. Zapoznaj się z przewodnikiem po migracji pakietu Android Consumer SDK 3.0.
- Wartość targetSdk pakietu Consumer SDK to teraz Android 14 (poziom API 34). Od sierpnia 2024 r. jest to wymagane w przypadku wszystkich aplikacji wdrażanych w Sklepie Google Play. Zapoznaj się z wymaganiami Google Play dotyczącymi docelowego poziomu interfejsu API.
2.99.0 (25 listopada 2024 r.)
Poprawki błędów
- Rozwiązanie problemu z błędem ANR, który występuje, gdy wykonanie
ConsumerApi.cleanUp()
trwa zbyt długo. Będzie ona wdrażana stopniowo (zaczynając od 0%), gdy tylko nowa wersja zostanie zintegrowana. - Rozwiązano problem polegający na tym, że kierowcy otrzymywali błędy gRPC z kodem „WEWNĘTRZNY” i komunikatem „Panic! To jest błąd”. Będzie ona wdrażana stopniowo (zaczynając od 0%), gdy tylko nowa wersja zostanie zintegrowana.
2.3.0 (2 sierpnia 2024 r.)
Zmiany w interfejsie API
Dodaj obsługę stylizacji map w chmurze, która umożliwia tworzenie spersonalizowanych map drogowych dla użytkowników bez konieczności aktualizowania kodu aplikacji za każdym razem, gdy wprowadzasz zmiany w stylu mapy. Więcej informacji znajdziesz w artykule Nadawanie mapie stylu za pomocą stylizacji map w chmurze.
Dodaj metodę
getServerTimeMillis()
doVehicleLocation
, aby określić czas, w którym silnik floty otrzymał aktualizację 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. Szczegółowe informacje o integracji z Jetpack Compose znajdziesz w kontaktach.
2.1.0 (17 stycznia 2024 r.)
Poprawki błędów
- Rozwiązanie problemu z zawieszaniem się aplikacji, który występuje, gdy pakiet SDK jest inicjowany więcej niż raz w cyklu życia aplikacji.
Zmiany w interfejsie API
- Wprowadza metodę służącą do pobierania wystąpienia
GoogleMap
utworzonego przez pakiet SDK (ConsumerGoogleMap.getGoogleMap()
). - Wprowadza interfejs API do pobierania instancji
Marker
utworzonych przez pakiet SDK, aby reprezentować pojazd (ConsumerController.getConsumerMarker()
). - Wprowadza interfejs API do otrzymywania prognozowanych przez klienta aktualizacji czasu i odległości podczas udostępniania trasy (
ProjectedRouteEta
).
1.99.2 (3 listopada 2023 r.)
Rozwiązano problem z zawieszaniem się aplikacji, który występuje podczas inicjowania pakietu SDK z dalszego procesu, oddzielonego od aplikacji.
Rozwiązano problem z zawieszaniem się aplikacji podczas wykonywania animacji kamery, gdy nie ma wystarczającej ilości miejsca na wypełnienie poziome lub pionowe. Występuje to tylko w najnowszym rendererze map.
Rozwiązano błąd, który powodował, że pierwszy etap podróży powrotnej był pomijany, gdy drugi etap przebiegał tą samą drogą.
Problemy
- Funkcja
ConsumerApi.initialize()
zwraca wyjątek, jeśli wywołana, gdy instancja interfejsu API już istnieje. Aby obejść ten problem, najpierw wywołaj funkcjęConsumerApi.getInstance()
i sprawdź zwrócony parametrTask
, aby określić, czy instancja interfejsu API już istnieje.
2.0.0 (15 września 2023 r.)
Ogłoszenie: zmiany w przypadku treści naruszających zasady
Minimalny poziom interfejsu API został zmieniony z 21 na 23.
Zmiana wymaganej wersji pakietu SDK Map z 17.0.0 na 18.1.0
Minimalna wersja standardowej biblioteki 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 na 18.2.0
Minimalny wymagany poziom biblioteki play-services-basement został zaktualizowany z 18.0.0 na 18.2.0.
Minimalna wymagana wersja biblioteki play-services-location została zaktualizowana z 17.0.0 na 21.0.1
Minimalna wymagana wersja biblioteki play-services-tasks została zaktualizowana z 18.0.1 na 18.0.2
Dodaje bibliotekę androidx.room:room-runtime z minimalną wymaganą wersją 2.5.2.
Zaktualizuj te wersje zależności:
Minimalna wersja biblioteki android-maps-utils została zaktualizowana z 0.4.2 na 3.5.2
Minimalna wersja com.google.android.datatransport:transport-backend-cct została zaktualizowana z 3.0.0 na 3.1.9
Minimalna wersja com.google.android.datatransport:transport-runtime została zaktualizowana z 3.0.1 na 3.1.9
Minimalna wersja pakietu androidx.lifecycle:lifecycle-extensions została zaktualizowana z 2.0.0 na 2.2.0
Minimalna wersja pakietu androidx.lifecycle:lifecycle-common-java8 została zaktualizowana z 2.0.0 na 2.6.1
Minimalna wersja androidx.appcompat:appcompat została zmieniona z 1.0.0 na 1.6.1
Minimalna wersja androidx.fragment:fragment została zaktualizowana z 1.0.0 na 1.6.1
Usuwa te wcześniej wycofane interfejsy API:
ConsumerTrip
,ConsumerTripCallback
,ConsumerTripManager
,ConsumerTripOptions
. Zostały one zastąpione przezTripModel
,TripModelCallback
,TripModelManager
iTripModelOptions
.Aplikacje korzystające z pakietu Consumer SDK muszą mieć teraz
targetSdkVersion
na poziomie 31 lub wyższym, acompileSdkVersion
na poziomie 33 lub wyższym.Aplikacje korzystające z 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 korzystające z ProGuard lub Dexguard muszą zostać przeniesione na R8. Więcej informacji znajdziesz na stronie https://developer.android.com/build/shrink-code.
Aplikacje korzystające z Consumer SDK muszą umożliwiać 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 istnieją już instancje interfejsu API. Aby określić, czy wcześniej utworzono instancję interfejsu API, należy użyć zwracanej wartościTask
przezConsumerApi.getInstance()
.
Ogłoszenie: wycofanie interfejsów API
wycofuje klasy adnotacji
Trip.TripStatus
iTrip.TripType
, a w zamian dodaje klasy adnotacjiTripInfo.TripStatus
iTripInfo.TripType
;W ramach tej zmiany funkcja
TripModelCallback#onTripStatusUpdated(TripInfo tripInfo, @Trip.TripStatus int status)
została wycofana, a w zamian dodano funkcjęTripModelCallback#onTripStatusUpdate(TripInfo tripInfo, @TripInfo.TripStatus int status)
.W ramach tej zmiany funkcja
TripInfo#getTripStatus()
została wycofana, a w zamian dodano funkcjęTripInfo#getCurrentTripStatus()
.W ramach tej zmiany funkcja
TripInfo#getTripType()
została wycofana, a zamiast niej dodano funkcjęTripInfo#getCurrentTripType()
.
Usunięcie klasy
Trip
.
Inne zmiany i poprawki błędów
Obsługuje żądanie najnowszego modułu renderowania w pakiecie SDK Map. Więcej informacji znajdziesz w artykule Nowy moduł renderowania map.
Zapewnia obsługę zakresu pakietu SDK Map od wersji 18.1.0(włącznie) do wersji 19.0.0(bez tej wersji).
Naprawiono błąd „deadline exceeded” (przekroczony termin) w przypadku komunikacji wewnętrznej między SDK a backendem Google.
Rozwiązanie problemu z renderowaniem na małym ekranie i w trybie obrazu w obrazie.
Przewodnik po migracji
1.99.1 (31 sierpnia 2023 r.)
Poprawki błędów
Rozwiązano problem z zawieszaniem się aplikacji, który występował podczas usuwania aktywności hosta lub fragmentu SDK.
Rozwiązanie problemu z zawieszaniem się aplikacji, który występuje, gdy wymiary MapView są równe 0 (wysokość lub szerokość).
Rozwiązanie problemu z zawieszaniem się aplikacji podczas wyświetlania lokalizacji pojazdu na ścieżce polilinii.
Ulepszenia
- Zapobiega zawieszaniu pakietu SDK, gdy aplikacja hosta jest instalowana z poza sklepu, a domyślne zasoby wizualne są nieobecne.
1.99.0 (22 czerwca 2023 r.)
Poprawki błędów
Rozwiązanie problemu z renderowaniem na małym ekranie i w trybie obrazu w obrazie.
Naprawiono problem z miganiem pojazdu podczas udostępniania przejazdu.
1.2.1 (7 czerwca 2023 r.)
Poprawki błędów
- Naprawiono błąd powodujący migotanie pojazdu podczas udostępniania przejazdu.
1.2.0 (21 listopada 2022 r.)
Poprawki błędów
- Rozwiązanie problemu, który powodował, że w
onTripActiveRouteTrafficUpdated
wywoływaniu zwrotnym był raportowany pusty ruch.
Nowe funkcje
- Funkcja „Wielokąty uwzględniające natężenie ruchu” jest teraz ogólnie dostępna.
1.1.2 (27 października 2022 r.)
Poprawki błędów
- Rozwiązanie problemu z znikaniem linii poliliniowej trasy po uruchomieniu
JourneySharingSession
więcej niż raz w przypadkuTripModel
.
Ogłoszenie: zawieszenie 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 na poziomie interfejsu API 21, jak 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 r. będziemy obsługiwać tylko poziomy interfejsu API 23 i nowsze. Inaczej mówiąc, po tej dacie przestaniemy obsługiwać poziomy interfejsu 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 4.x) nie zostaną naprawione. Nie gwarantujemy też, że pakiety SDK będą działać prawidłowo.
v1.1.1 (25 lipca 2022 r.)
Zmiana zależności
- obniża minimalny obsługiwany poziom interfejsu API Androida do 21.
1.1.0 (28 kwietnia 2022 r.)
- Ulepszenia wewnętrzne.
v1.0.19 (17 marca 2022 r.)
Poprawki błędów
- Naprawiono wyciek pamięci w klasie
ConsumerApi
.
v1.0.14 (30 listopada 2021 r.)
Minimalny obsługiwany poziom interfejsu API Androida to teraz 23.
Zmiany w interfejsie API
Zmiany w klasach
ConsumerTrip
iConsumerTripManager
.- Uprościliśmy nazwy niektórych metod, aby były bardziej zrozumiałe i zgodne z platformą iOS.
Zmiany w usługach
ConsumerTripCallback
,ConsumerTrip
iTripInfo
.Zmieniono nazwy niektórych klas, aby były zgodne z iOS. Wprowadziliśmy właściwości
TripModel
,TirpModelManager
iTripModelOptions
, aby wycofać z użycia właściwościConsumerTrip
,ConsumerTripManager
iConsumerTripOptions
.Uprościliśmy nazwy niektórych metod. zmodyfikowano lub dodano komentarze JavaDoc do metod, aby lepiej przekazywały znaczenie;
Ulepszona obsługa błędów.
Dostosowywanie stylów
Wycofane starsze obudowy
- Parametry
MarkerStyleOptions
iPolylineStyleOptions
zostały wycofane i zastąpione przez parametryMarkerOptions
iPolylineOptions
, które są udostępniane z pakietem SDK Map.
- Parametry
Monitorowanie awarii
Dodano wykrywanie awarii i rejestrowanie.
- Dodaliśmy opcję, która umożliwia rezygnację z tej funkcji. Zrobiliśmy to w ramach szerszego projektu monitorowania awarii na całym świecie.
Zmiany dotyczące uwierzytelniania
- Usuń niepotrzebne metody z interfejsów uwierzytelniania.
- Usunięto parametr
ServiceType
.
- Usunięto parametr
v0.9.28 (18 maja 2021 r.)
Zmiany w interfejsie API
- Zaktualizowano wszystkie metody
ConsumerTripCallback
, aby używały parametruTripInfo
. - Dodano
ConsumerTrip.isRefreshing()
, który wskazuje, czyConsumerTrip
aktywnie aktualizuje się o najnowsze informacje o podróży z Fleet Engine. - Dodano:
ConsumerTripCallback.onTripRemainingRouteDistanceUpdated()
. - Dodano:
ConsumerTripCallback.onTripRemainingRouteUpdated()
. - Zamień typy zwracane Guava (
ImmutableSet
,ImmutableList
) na klasy o odpowiednich funkcjach (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
- Usunięto warunek wyścigu, w którym pakiet SDK mógł się zawieszać z powodu interakcji z mapą, zanim ta była gotowa.
- Pakiet SDK nie zawiera już odszyfrowanej kopii
io.grpc
. - Naprawiono błąd dotyczący migoczących odcinków dróg na niektórych urządzeniach. Segmenty ruchu będą teraz miały zaokrąglone końce.
v0.9.15 (7 października 2020 r.)
Zmiany w interfejsie API
- W tej wersji wprowadzamy odcinki Polyline uwzględniające natężenie ruchu.
– Dodano
TripInfo.getActiveRouteTraffic()
iTripInfo.getRemainingRouteTraffic()
.- Dodano
ConsumerTripCallback.onTripActiveRouteTrafficUpdated()
iConsumerTripCallback.onTripRemainingRouteTrafficUpdated()
, aby wskazywać, kiedy nastąpiła zmiana ruchu. - Dodano
PolylineStyleOptions
do personalizacji ruchu (setTrafficEnabled()
,setTrafficColorNoData()
,setTrafficColorNormal()
,setTrafficColorSlow()
,setTrafficColorTrafficJam()
). - Wystawiony
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
v0.9.9 (15 lipca 2020 r.)
Zmiany w interfejsie API
- Jest to ważna zmiana, która wprowadza architekturę modułową z bardziej przejrzystą relacją między warstwą tylko z danymi (np.
ConsumerTripManager
) a warstwą interfejsu użytkownika (np.JourneySharingSession
). Informacje o przechodzeniu na nową architekturę znajdziesz w przewodniku po migracji do architektury modułowej. – ObiektConsumerTrip
jest teraz uzyskiwany z poziomuConsumerTripManager.getTrip()
.- Nazwa
ConsumerTrip.unregisterCallback
została zmieniona naConsumerTrip.unregisterTripCallback
. - Nazwa
ConsumerTrip.isCallbackRegistered
został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 innych niż informacje 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 „dropoff”.
- Usunięto te typy znaczników:
SELECTED_PICKUP_POINT
,SUGGESTED_PICKUP_POINT
,HIGHLIGHTED_PICKUP_POINT
iSELECTED_DROPOFF_POINT
.
- Zmieniono interfejsy
OnConsumerMarkerClickCallback
iConsumerMapReadyCallback
na klasy abstrakcyjne. - Dodano
ConsumerController.getCameraUpdate()
,ConsumerController.isAutoCameraEnabled()
iConsumerController.enableAutoCamera()
. - Usunięto niestandardowy przycisk szybkiego działania i powiązane z nim metody (
ConsumerController.isMyLocationFabEnabled
iConsumerController.setMyLocationFabEnabled
).
Zmiany w implementacji
ConsumerTripCallback
, niezależnie od tego, czy jest zarejestrowany z użyciemLifecycleOwner
, czy bez niego, nie jest już automatycznie wyrejestrowany naTripStatus.COMPLETE
aniTripStatus.CANCELED
.- AutoCamera jest teraz domyślnie włączona i nigdy się nie wyłącza ani nie włączy ponownie.
Wcześniej AutoCamera była automatycznie włączana na urządzeniu
TripStatus.ARRIVED_AT_PICKUP
i wyłączała się, gdy użytkownik wchodził w interakcję z mapą podczas udostępniania trasy. - W animacji udostępniania pojazdu w ramach udostępniania trasy wprowadziliśmy te ulepszenia:
- Animacja udostępniania trasy obsługuje teraz sytuację, w której pojazd może prawidłowo wracać tą samą trasą, którą już przejechał.
- Gdy algorytm uzna to za stosowne, pojazd będzie teraz animowany w postaci linii prostej zamiast stosować interpolację między punktami.
- 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
v0.9.1 (23 marca 2020 r.)
Zmiany w interfejsie API
- Dodano
TripInfo.getVehicleId()
,TripInfo.getNumberOfPassengers()
,TripInfo.getIntermediateDestinationIndex()
,TripInfo.getTripActiveRoute()
iTripInfo.getTripRemainingRoute()
. - Dodano klasę
options
używaną podczas inicjowaniaConsumerApi
, która umożliwia dynamiczne ustawianie adresuFleetEngine
. Jeśli interfejs API nie zostanie wywołany z wartościąFleetEngine
, spróbuje pobrać ją z pliku manifestu Androida. W przeciwnym razie użyje wartości domyślnej.
Ulepszenia
- Gdy stan przejazdu to
ARRIVED_AT_PICKUP
, linia wielokąta trasy nie jest wyświetlana. - Ulepszony został system śledzenia pojazdów poza trasą (wymaga pakietu DriverSDK 1.15):
- Śledzenie pojazdu nie przypina pojazdu do trasy, gdy pojazd przejeżdża przez punkt odbioru.
- Śledzenie pojazdu umożliwia wyświetlanie pojazdu poza drogą, np. na nieskatalogowanych parkingach.
- Ikona pojazdu jest teraz aktualizowana, gdy miejsce docelowe kierowcy nie pasuje do miejsca docelowego w Fleet Engine.
v0.8.6 (16 grudnia 2019 r.)
Zmiany w interfejsie API
Dodano:
TripInfo.getVehicleLocation()
.ConsumerMapView
nie jest już ostateczne.
Zmiany w implementacji
- Pozostała odległość na bieżącym odcinku jest teraz obliczana na podstawie odległości na serwerze (zgłoszona przez kierowcę + trasa statyczna w odpowiednich 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ółowe informacje 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 podróż.
Dodano dzienniki błędów odpowiedzi na podróż.
Uwagi
- Od wersji 0.8.1 pakiet Consumer SDK na Androida jest dostarczany jako skompresowane archiwum ZIP. Informacje o tym, jak odwrócić działanie tego filtra, znajdziesz w artykule Jetifier: tryb odwrotny.
v0.8.1 (13 września 2019 r.)
Nowe funkcje
Obsługa ConsumerMapView.
Artefakty ODRD są teraz dostarczane w repozytorium Maven, a nie w pliku ZIP o rozszerzeniu .aar. Więcej informacji znajdziesz w artykule Dodawanie pakietu Consumer SDK do aplikacji.
Zmiany w interfejsie API
Dodano funkcję
ConsumerController.disableAutoCamera()
jako odwrotną do funkcjicenterMapForState()
.Funkcja
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. ZmienionoAuthTokenFactory
z interfejsu na klasę abstrakcyjną, aby umożliwić zgodność wsteczną w Java 7. Ta zmiana jest wstecznie zgodna, ale stare metody generowania tokena dla pojedynczej usługi są przestarzałe i ostatecznie zostaną usunięte.
Zmiany w implementacji
Zasoby są teraz wyśrodkowane w środku ikony, co eliminuje przesunięcie cienia.
setState
naJOURNEY_SHARING onStartTripMonitoring()
zamiast czekać na stan monitorowanej podróży.Zawsze zwraca dane dla pierwszej aktualizacji danych podróży, nawet jeśli dane te są niezsynchronizowane.
Dodano Android Map Utils jako wymaganą zależność.
Poprawki błędów
- Naprawiono uszkodzoną składnię eksportu Proguard dla grpc keep.
0.7.0 (7 sierpnia 2019 r.)
Nowe funkcje
- Obsługa wielu miejsc docelowych w ramach udostępniania ścieżki.
Zmiany w interfejsie API
Nowe metody
ConsumerTripCallback
.onTripIntermediateDestinationsUpdated()
.onTripETAToNextTripWaypointUpdated()
.
nowe metody
ConsumerController
.getIntermediateDestinations()
.setIntermediateDestinations(List<TerminalLocation> intermediateDestinations)
.
Nowe
TripStatuses
.TripStatus.ENROUTE_TO_INTERMEDIATE_DESTINATION
.TripStatus.ARRIVED_AT_INTERMEDIATE_DESTINATION
.
nowe metody dostępu
TripWaypoint
.getETAMillis()
.getDistanceMeters()
.
Dodano klasę
TripInfo
.- Możesz uzyskać
TripInfo
dla aktywnej podróży zConsumerTripManager.getActiveTripInfo()
.
- Możesz uzyskać
Dodano:
WaypointType.INTERMEDIATE_DESTINATION
.Dodano:
MarkerType.TRIP_INTERMEDIATE_DESTINATION
.Utworzono kampanię
ConsumerMapState.JOURNEY_SHARING
na podstawie połączonych kampaniiConsumerMapStates
,ENROUTE_TO_PICKUP
,ARRIVED_AT_PICKUP
,ENROUTE_TO_DROPOFF
iCOMPLETE
.Zaktualizowano tabelę
StateChangeCallbacks
.Dodano:
onStateJourneySharing()
.Usunięto
onStateWaitingForPickup()
,onStateDriverArrived()
,onStateEnroute()
ionStateEndofTrip()
.
Poprawki błędów
Rozwiązaliśmy błąd polegający na tym, że trasa nie jest przycinana do lokalizacji pojazdu, gdy monitorowanie przejazdu rozpoczyna się w środku aktywnego przejazdu (a nie na początku trasy).
Rozwiązano błąd, który powodował, że wywołania zwrotne dotyczące podróży nie były wywoływane w przypadku słuchaczy zarejestrowanych w usłudze Tripmanager po pobraniu danych o podróży przez usługę TripManager.
Powiększenie kamery obejmuje teraz tylko aktywną trasę i kolejną pozycję na trasie (punkt docelowy należący do trasy). Nawet jeśli pozostała część nogi jest widoczna, zoom nigdy nie obejmie jej. Wcześniej punkt docelowy był uwzględniany w powiększeniu, gdy pojazd był w drodze po odbiór lub po przybyciu na miejsce odbioru. To już nieprawda.
Ulepszenia
Wypełnij 0 pozostającymi punktami drogowymi za pomocą danych Kierowcy (lista pozostałych punktów drogowych jest zwracana z
ConsumerTripCallback.onTripRemainingWaypointsUpdated
iTripInfo.getRemainingWaypoints()
).Aktualizowanie czasu ETA wszystkich pozostałych punktów trasy po zmianie czasu ETA do pierwszego punktu na liście.
Wymuś ponowne włączenie autokamery tylko wtedy, gdy kierowca dojedzie na miejsce odbioru. Wcześniej po każdej zmianie stanu podróży ustawienie autokamera było resetowane do wartości domyślnej (włączone). Autokamera jest nadal domyślnie włączona. Autocamera nie zostanie ponownie włączona, jeśli nowa aktywna podróż zostanie ustawiona bez nowego wywołania funkcji
startTripMonitoring()
.
v0.6.1 (26 czerwca 2019 r.)
Nowe funkcje
- Udostępnianie przejazdów w ramach Carpool.
Zmiany w interfejsie API
Funkcja
ConsumerController.getConsumerMapStyle()
zwraca teraz wartośćConsumerMapStyle
, a nieTask<ConsumerMapStyle>
.Dodano:
PolylineStyle.setZIndex()
.
Poprawki błędów
Animacja trasy jest teraz wyświetlana tylko wtedy, gdy segment trasy jest zsynchronizowany, co poprawia komfort korzystania z aplikacji.
Naprawiono „migotanie” pojazdu podczas interpolacji animacji, gdy aktualizacje lokalizacji kierowcy są blisko siebie.
Usunięto błąd, który powodował, że pojazd zaczynał się na początku trasy, a nie w miejscu, w którym znajdował się w momencie rozpoczęcia monitorowania aktywnej podróży.
wyświetlanie aktywnej ścieżki w postaci polilinii nad pozostałą ścieżką, gdy się na siebie nakładają;
Ulepszenia
- Teraz udostępnij klasę gRPC
Status
z niezaszyfrowanymi metodami.
v0.5.1.01 (17 maja 2019 r.)
Nowe funkcje
- Obsługa udostępniania ścieżki w ciągu.
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
- Możesz teraz ustawiać wywołania zwrotne dla stanów bez ich wywoływania.
Metoda | Oddzwanianie |
---|---|
startPickupSelection |
setPickupSelectionCallback |
startDropoffSelection |
setDropoffSelectionCallback |
startTripPreview |
setTripPreviewSelectionCallback |
ConsumerController.setLanguage(String languageCode)
umożliwia ustawienie języka używanego w wywołaniach do FleetEngine (np. w przypadku opisów punktów odbioru).
Ulepszenia
- Stan wyboru miejsca dostawy zawiera teraz pin, który można przeciągać.
- Usunięto animację kamery w stanie
INITIALIZE
. - Zawartość komórki
ManagedChannelBuilder
została zastąpiona tekstemAndroidChannelBuilder
.