In diesem Abschnitt finden Sie Versionshinweise für das Consumer SDK für Android.
Ankündigung: Support für API-Level 23, 24 und 25 wird eingestellt
Gemäß der Richtlinie zur Unterstützung von mobilen Betriebssystemversionen wird die Unterstützung für Android 6 und 7 (API-Level 23, 24 und 25) in den kommenden Hauptversionen des Consumer SDK für Android eingestellt.
Für Versionen des Consumer SDK für Android, die ab dem vierten Quartal 2025 veröffentlicht werden, ist mindestens Android 8 (API-Level 26) erforderlich. Ältere SDK-Versionen unterstützen Android 6 und 7 weiterhin.
Wenn in Ihren Abhängigkeiten keine Versionsnummer angegeben ist, lädt Ihre IDE die neueste SDK-Version und neue Builds Ihrer App unterstützen Android 6 und 7 nicht.
Geben Sie eine Version des Consumer SDK für Android in den Build-Abhängigkeiten Ihrer Anwendung an, um zu steuern, wann Sie das unterstützte Mindestbetriebssystem für neue Versionen Ihrer App anheben.
5.0.0 (9. November 2026)
- Unterstützung für den vollständigen R8-Modus hinzugefügt. Die ProGuard-Regeln des SDKs behalten jetzt die gRPC-Anbieterklassen bei, die durch Reflexion geladen werden. Apps, die den vollständigen R8-Modus aktivieren, schlagen beim Start nicht mehr mit
Unable to load OkHttpChannelProviderfehl.
Fehlerkorrekturen
- Es wurde ein Problem behoben, bei dem Versuche, eine sichere Verbindung zur Fleet Engine herzustellen, unbegrenzt ausstehen konnten, wenn ein Zwischen-Carrier-Proxy während des Verbindungsaufbaus hängen blieb. Dadurch wurden Aktualisierungen des Fahrtstatus und der Fahrzeugverfolgung in bestimmten Mobilfunknetzen nicht aktualisiert. Das Consumer SDK erzwingt jetzt ein Verbindungszeitlimit und stellt die Verbindung automatisch wieder her.
Änderungen an Abhängigkeiten und Konfigurationen
Ab Version 5.0.0 des Consumer SDK für Android gelten neue Mindestanforderungen:
- Die unterstützte Android-Mindestversion ist Android 7.0 (API-Level 24).
- Apps müssen auf Kotlin 2.4 aktualisiert werden.
Das SDK wird jetzt mit den folgenden Tools erstellt:
- Das Android-Gradle-Plug-in wurde auf Version 9.2.0 aktualisiert.
- Upgrade von Gradle auf Version 9.4.1 durchgeführt.
4.1.0 (26. Mai 2026)
- Interne Verbesserungen: Der interne Datenspeicher wurde zu Jetpack DataStore migriert.
Änderungen an Abhängigkeiten und Konfigurationen
- Die Kotlin-Abhängigkeitsversion wurde auf v2.3.0 aktualisiert.
- Das Android-Gradle-Plug-in wurde auf Version 8.13.2 aktualisiert.
- Upgrade von Gradle auf Version 8.13 durchgeführt.
- Die Desugar-Bibliothek wurde auf Version 2.1.5 aktualisiert.
- Das Maps SDK wurde auf Version 20.0.0 aktualisiert und die folgenden GMS Core-Abhängigkeiten wurden aktualisiert:
- play-services-location: 21.3.0
- play-services-tasks: 18.4.1
- play-services-common: 18.1.0
- play-services-basement: 18.1.0
- Jetpack Datastore-Abhängigkeiten hinzugefügt (androidx.datastore:datastore-core:1.2.0, androidx.datastore:datastore-guava:1.2.0).
4.0.0 (3. Oktober 2025)
- Interne Verbesserungen.
3.2.0 (26. Juni 2025)
- Verbesserungen bei der internen Protokollierung.
Änderungen an Abhängigkeiten und Konfigurationen
- Ab Version 3.2.0 des Consumer SDK für Android müssen Apps auf Kotlin 2.1 aktualisiert werden.
Fehlerkorrekturen
- Verwenden Sie für interne Animationsentscheidungen die Polylinienlänge anstelle der Luftlinie.
3.1.0 (10. März 2025)
- Verbesserungen bei der internen Protokollierung.
3.0.0 (6. Dezember 2024)
Änderungen an Abhängigkeiten und Konfigurationen
- Ab Version 3.0.0 des Consumer SDK für Android müssen Apps auf Kotlin 2.0 aktualisiert werden. Weitere Informationen finden Sie im Migrationsleitfaden für das Android Consumer SDK 3.0.
- Die targetSdk für das Consumer SDK ist jetzt Android 14 (API-Level 34). Dies ist eine Anforderung für alle Apps, die ab August 2024 im Google Play Store bereitgestellt werden. Weitere Informationen finden Sie unter Anforderungen an das Ziel-API-Level von Google Play erfüllen.
2.99.0 (25. November 2024)
Fehlerkorrekturen
- Ein ANR-Fehler wurde behoben, der auftritt, wenn die Ausführung von
ConsumerApi.cleanUp()zu lange dauert. Der Roll-out erfolgt schrittweise (beginnend bei 0 %), sobald der Release integriert wurde. - Es wurde ein Problem behoben, bei dem Fahrer gRPC-Fehler mit dem Code „INTERNAL“ und der Meldung „Panic! Das ist ein Fehler!“. Der Roll-out erfolgt schrittweise (beginnend bei 0 %), sobald der Release integriert wurde.
2.3.0 (2. August 2024)
API-Änderungen
Unterstützung für das cloudbasierte Gestalten von Karteninhalten hinzufügen, damit Sie Nutzern personalisierte Straßenkarten bieten können, ohne bei jeder Änderung des Kartenstils den App-Code aktualisieren zu müssen. Weitere Informationen finden Sie unter Karte mit cloudbasiertem Gestalten von Karteninhalten gestalten.
Fügen Sie die Methode
getServerTimeMillis()zuVehicleLocationhinzu, um den Zeitpunkt zu bestimmen, zu dem die Standortaktualisierung von der Fleet Engine empfangen wurde.
2.2.0 (7. Mai 2024)
API-Änderungen
- Unterstützung für die Jetpack Compose-Integration wurde hinzugefügt. Dies ist eine experimentelle Funktion. Weitere Informationen zur Integration mit Jetpack Compose erhalten Sie von Ihrem Ansprechpartner.
2.1.0 (17. Januar 2024)
Fehlerkorrekturen
- Ein Absturz, der auftritt, wenn das SDK im Laufe des Anwendungslebenszyklus mehrmals initialisiert wird, wurde behoben.
API-Änderungen
- Führt eine Methode ein, um die vom SDK erstellte
GoogleMap-Instanz (ConsumerGoogleMap.getGoogleMap()) abzurufen. - Einführung einer API zum Abrufen der vom SDK erstellten
Marker-Instanzen, die das Fahrzeug darstellen (ConsumerController.getConsumerMarker()). - Führt eine API ein, um während der Fahrtfreigabe (
ProjectedRouteEta) vom Client prognostizierte Aktualisierungen für Zeit und Entfernung zu erhalten.
1.99.2 (3. November 2023)
Ein Absturz wurde behoben, der auftritt, wenn das SDK von einem Remote-Prozess initialisiert wird, der von der Anwendung getrennt ist.
Ein Absturz wurde behoben, der auftrat, wenn während der Ausführung einer Kameraanimation nicht genügend vertikaler oder horizontaler Platz für das Padding vorhanden war. Dies geschieht nur beim neuesten Maps-Renderer.
Es wurde ein Fehler behoben, der dazu führte, dass der erste Abschnitt einer Back-to-Back-Fahrt gekürzt wurde, wenn der zweite Abschnitt über dieselbe Straße führte.
Probleme
ConsumerApi.initialize()löst eine Ausnahme aus, wenn es aufgerufen wird, während bereits eine API-Instanz vorhanden ist. Um dieses Problem zu umgehen, rufen Sie zuerstConsumerApi.getInstance()auf und werten Sie den zurückgegebenenTaskaus, um festzustellen, ob bereits eine API-Instanz vorhanden ist.
2.0.0 (15. September 2023)
Ankündigung: Funktionsgefährdende Änderungen
Das erforderliche Mindest-API-Level wurde von 21 auf 23 aktualisiert.
Die erforderliche Maps SDK-Version wurde von v17.0.0 auf v18.1.0 aktualisiert.
Die Mindestversion der Kotlin-Standardbibliothek wurde von Version 1.6.10 auf Version 1.9.0 aktualisiert.
Versionen der Google Play-Dienste-Abhängigkeiten aktualisieren
Die Mindestversion der play-services-base-Bibliothek wurde von v18.0.1 auf v18.2.0 aktualisiert.
Die Mindestversion der play-services-basement-Bibliothek wurde von Version 18.0.0 auf Version 18.2.0 aktualisiert.
Die Mindestversion der Bibliothek „play-services-location“ wurde von Version 17.0.0 auf Version 21.0.1 aktualisiert.
Die Mindestanforderung für die Version der play-services-tasks-Bibliothek wurde von Version 18.0.1 auf Version 18.0.2 aktualisiert.
Fügt die Bibliothek „androidx.room:room-runtime“ mit der Mindestversionsanforderung v2.5.2 hinzu
Aktualisieren Sie die folgenden Abhängigkeitsversionen:
Die Mindestversion der android-maps-utils-Bibliothek wurde von v0.4.2 auf v3.5.2 aktualisiert.
Die Mindestversion für „com.google.android.datatransport:transport-backend-cct“ wurde von Version 3.0.0 auf Version 3.1.9 aktualisiert.
Die Mindestversion für „com.google.android.datatransport:transport-runtime“ wurde von Version 3.0.1 auf Version 3.1.9 aktualisiert.
Die Mindestanforderung für die Version von androidx.lifecycle:lifecycle-extensions wurde von v2.0.0 auf v2.2.0 aktualisiert.
Die Mindestanforderung für die Version von androidx.lifecycle:lifecycle-common-java8 wurde von Version 2.0.0 auf Version 2.6.1 aktualisiert.
Die Mindestanforderung für die Version von androidx.appcompat:appcompat wurde von Version 1.0.0 auf Version 1.6.1 aktualisiert.
Die Mindestanforderung für die Version von androidx.fragment:fragment wurde von v1.0.0 auf v1.6.1 aktualisiert.
Entfernt die folgenden zuvor verworfenen APIs:
ConsumerTrip,ConsumerTripCallback,ConsumerTripManager,ConsumerTripOptions. Sie wurden durchTripModel,TripModelCallback,TripModelManagerundTripModelOptionsersetzt.Apps, die das Consumer SDK verwenden, müssen jetzt eine
targetSdkVersionvon API 31 oder höher und einecompileSdkVersionvon API 33 oder höher haben.Für Apps, die das Consumer SDK verwenden, muss jetzt die Unterstützung der Java 8-Bibliothek aktiviert werden. Eine Anleitung zum Aktualisieren finden Sie unter https://developer.android.com/studio/write/java8-support.
Apps, die Proguard oder Dexguard verwenden, müssen zu R8 migrieren. Weitere Informationen finden Sie unter https://developer.android.com/build/shrink-code.
In Apps, die das Consumer SDK verwenden, muss die Entzuckerung aktiviert sein. Eine Anleitung finden Sie unter https://developer.android.com/studio/write/java8-support#library-desugaring.
Die Methode
ConsumerApi.initialize()löst jetzt eine Ausnahme aus, wenn sie aufgerufen wird, während bereits eine API-Instanz erstellt wurde. Anhand des vonConsumerApi.getInstance()zurückgegebenenTaskmuss ermittelt werden, ob zuvor eine API-Instanz erstellt wurde.
Ankündigung: Einstellung von APIs
Die Annotationsklassen
Trip.TripStatusundTrip.TripTypewerden eingestellt und durch die AnnotationsklassenTripInfo.TripStatusundTripInfo.TripTypeersetzt.Im Rahmen dieser Änderung wird
TripModelCallback#onTripStatusUpdated(TripInfo tripInfo, @Trip.TripStatus int status)eingestellt und durchTripModelCallback#onTripStatusUpdate(TripInfo tripInfo, @TripInfo.TripStatus int status)ersetzt.Im Rahmen dieser Änderung wird
TripInfo#getTripStatus()eingestellt und durchTripInfo#getCurrentTripStatus()ersetzt.Im Rahmen dieser Änderung wird
TripInfo#getTripType()eingestellt und durchTripInfo#getCurrentTripType()ersetzt.
Die Klasse
Tripwird eingestellt.
Weitere Änderungen und Fehlerkorrekturen
Unterstützt das Anfordern des neuesten Maps SDK-Renderers. Weitere Informationen finden Sie unter Neuer Karten-Renderer.
Unterstützt Maps SDK-Versionen von v18.1.0 (einschließlich) bis v19.0.0 (ausschließlich).
Behebt den Fehler „Frist überschritten“ bei der internen Kommunikation zwischen dem SDK und dem Google-Backend.
Ein Rendering-Problem bei kleinen Bildschirmen und im Bild-im-Bild-Modus wurde behoben.
Migrationsanleitung
1.99.1 (31. August 2023)
Fehlerkorrekturen
Ein Absturz, der auftritt, wenn die SDK-Hostaktivität oder das SDK-Hostfragment gelöscht wird, wurde behoben.
Ein Absturz, der auftritt, wenn die Abmessungen der MapView (Höhe oder Breite) 0 sind, wurde behoben.
Es wurde ein Absturz behoben, der auftrat, wenn der Fahrzeugstandort auf die Polylinie der Route projiziert wurde.
Verbesserungen
- Verhindert, dass das SDK abstürzt, wenn die gehostete Anwendung per Sideload geladen wird und die standardmäßigen visuellen Ressourcen nicht vorhanden sind.
1.99.0 (22. Juni 2023)
Fehlerkorrekturen
Behebt ein Renderingproblem bei kleinen Bildschirmen und im Bild-im-Bild-Modus.
Fahrzeugflackern während der Fahrtfreigabe wurde behoben.
1.2.1 (7. Juni 2023)
Fehlerkorrekturen
- Ein Fehler wurde behoben, der dazu führte, dass das Fahrzeug während der Fahrtenfreigabe flackerte.
1.2.0 (21. November 2022)
Fehlerkorrekturen
- Es wurde ein Fehler behoben, durch den im
onTripActiveRouteTrafficUpdated-Callback leerer Traffic gemeldet wurde.
Neue Funktionen
- „Verkehrsabhängige Polylinien“ sind jetzt allgemein verfügbar.
1.1.2 (27. Oktober 2022)
Fehlerkorrekturen
- Es wurde ein Fehler behoben, durch den die Polylinie der Route verschwand, wenn eine
JourneySharingSessionmehr als einmal für eineTripModelgestartet wurde.
Ankündigung: Einstellung des Supports für Android 5 (25. Juli 2022)
Für die SDK-Version 1.1.1 bieten wir ein zusätzliches Jahr Support für Apps, die auf Android 5 mit den API-Levels 21 und 22 ausgeführt werden.
Was bedeutet das?
Das Consumer SDK, das in Ihren Android-Apps ausgeführt wird, unterstützt bis zum 30. Juni 2023 mindestens Android 5 (API-Level 21).
Nach dem 30. Juni 2023 werden nur noch Android API-Level 23 und höher unterstützt. Das bedeutet, dass wir nach diesem Datum die Android API-Level 21 und 22 in allen SDK-Versionen nicht mehr unterstützen. Das bedeutet, dass Fehler im Zusammenhang mit Android 21 oder 22 in SDK-Versionen (einschließlich 4.x) nicht behoben werden und wir nicht garantieren, dass die SDKs korrekt funktionieren.
v1.1.1 (25. Juli 2022)
Abhängigkeitsänderung
- Das unterstützte Android-API-Mindestlevel wurde auf 21 herabgestuft.
v1.1.0 (28. April 2022)
- Interne Verbesserungen.
v1.0.19 (17. März 2022)
Fehlerkorrekturen
- Ein Speicherleck in der Klasse
ConsumerApiwurde behoben.
v1.0.14 (30. November 2021)
Das unterstützte Android-API-Mindestlevel ist jetzt 23.
API-Änderungen
Änderungen an den Klassen
ConsumerTripundConsumerTripManager.- Einige Methodennamen wurden bereinigt, um ihre Bedeutung klarer zu machen und sie an die iOS-Plattform anzupassen.
Änderungen an
ConsumerTripCallback,ConsumerTripundTripInfo.Einige Klassennamen wurden geändert, um sie an iOS anzupassen.
TripModel,TirpModelManagerundTripModelOptionswurden eingeführt, umConsumerTrip,ConsumerTripManagerundConsumerTripOptionszu ersetzen.Einige Methodennamen wurden bereinigt. JavaDoc-Kommentare zu Methoden wurden überarbeitet oder hinzugefügt, um die Bedeutung klarer zu vermitteln.
Verbesserte Fehlerbehandlung.
Anpassung des Stils
Eingestellte Legacy-Wrapper
MarkerStyleOptionsundPolylineStyleOptionswurden eingestellt und durchMarkerOptionsundPolylineOptionsersetzt, die beide mit dem Maps SDK geteilt werden.
Absturzüberwachung
Absturzerkennung und ‑protokollierung hinzugefügt.
- Es wurde eine Ergänzung vorgenommen, mit der Sie diese Funktion deaktivieren können. Dies war Teil einer größeren Geo-weiten Initiative zur Absturzüberwachung.
Änderungen der Authentifizierung
- Entfernen Sie unnötige Methoden aus den Authentifizierungsschnittstellen.
- Der Parameter
ServiceTypewurde entfernt.
- Der Parameter
v0.9.28 (18. Mai 2021)
API-Änderungen
- Alle
ConsumerTripCallback-Methoden wurden aktualisiert, umTripInfoals Parameter zu verwenden. ConsumerTrip.isRefreshing()wurde hinzugefügt. Damit wird angegeben, obConsumerTripaktiv mit aktuellen Fahrtdaten von Fleet Engine aktualisiert wird.ConsumerTripCallback.onTripRemainingRouteDistanceUpdated()wurde hinzugefügt.ConsumerTripCallback.onTripRemainingRouteUpdated()wurde hinzugefügt.- Ersetzen Sie Guava-Rückgabetypen (
ImmutableSet,ImmutableList) durch entsprechendejava.util-Klassen. Änderungen am Paketnamen:
- 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
Änderungen bei der Implementierung
- Eine Race-Bedingung wurde behoben, bei der das SDK durch Interaktionen mit der Karte abstürzen konnte, bevor es bereit war.
- Das SDK enthält keine nicht verschleierte Kopie von
io.grpcmehr. - Ein Fehler wurde behoben, der auf bestimmten Geräten zu flackernden Polylinien für die Verkehrslage führte. Verkehrssegmente haben jetzt abgerundete Enden.
v0.9.15 (7. Oktober 2020)
API-Änderungen
- In dieser Version werden verkehrsabhängige Polylinien eingeführt.
–
TripInfo.getActiveRouteTraffic()undTripInfo.getRemainingRouteTraffic()hinzugefügt.ConsumerTripCallback.onTripActiveRouteTrafficUpdated()undConsumerTripCallback.onTripRemainingRouteTrafficUpdated()wurden hinzugefügt, um anzugeben, wann sich der Traffic geändert hat.PolylineStyleOptionsfür die Anpassung des Traffics hinzugefügt (setTrafficEnabled(),setTrafficColorNoData(),setTrafficColorNormal(),setTrafficColorSlow(),setTrafficColorTrafficJam()).PolylineStyleOptions.TRAFFIC_Z_INDEX_ADDITIONfreigelegt.TripWaypoint.getTrafficData()wurde hinzugefügt.- Datentyp
TrafficDatahinzugefügt. ConsumerController.hideAllSessions()wurde hinzugefügt.ConsumerController.showSession()akzeptiert „null“ nicht mehr als Argument.
v0.9.9 (15. Juli 2020)
API-Änderungen
- Dies ist eine wichtige Änderung, die eine modularisierte Architektur mit einer klareren Beziehung zwischen der reinen Datenebene (z. B.
ConsumerTripManager) und der Benutzeroberflächenebene (z. B.JourneySharingSession) einführt. Informationen zur Migration zur neuen Architektur finden Sie in der Modularisierungs-Migrationsanleitung. - DasConsumerTrip-Objekt wird jetzt vonConsumerTripManager.getTrip()abgerufen.ConsumerTrip.unregisterCallbackwurde inConsumerTrip.unregisterTripCallbackumbenannt.ConsumerTrip.isCallbackRegisteredwurde inConsumerTrip.isTripCallbackRegisteredumbenannt.ConsumerTrip.setConsumerTripOptions()undConsumerTrip.getConsumerTripOptions()wurden hinzugefügt.ConsumerTrip.setAutoRefreshInterval()wurde entfernt.
- APIs, die nicht für die Fahrtenfreigabe verwendet werden, wurden entfernt.
- Karte mit der Fahrzeugdichte entfernt.
- Der Status der Fahrtvorschau wurde entfernt.
- Auswahlstatus für Abholung entfernt.
- Auswahlstatus für Abgabe entfernt.
- Die folgenden Markertypen wurden entfernt:
SELECTED_PICKUP_POINT,SUGGESTED_PICKUP_POINT,HIGHLIGHTED_PICKUP_POINTundSELECTED_DROPOFF_POINT.
OnConsumerMarkerClickCallbackundConsumerMapReadyCallbackwurden von Schnittstellen in abstrakte Klassen geändert.ConsumerController.getCameraUpdate(),ConsumerController.isAutoCameraEnabled()undConsumerController.enableAutoCamera()wurden hinzugefügt.- Die benutzerdefinierte FAB und die zugehörigen Methoden (
ConsumerController.isMyLocationFabEnabledundConsumerController.setMyLocationFabEnabled) wurden entfernt.
Änderungen bei der Implementierung
- Ein
ConsumerTripCallback, der mit oder ohneLifecycleOwnerregistriert ist, wird nicht mehr automatisch amTripStatus.COMPLETEoderTripStatus.CANCELEDabgemeldet. - AutoCamera ist jetzt standardmäßig aktiviert und wird nicht mehr automatisch aktiviert oder deaktiviert.
Bisher wurde AutoCamera bei
TripStatus.ARRIVED_AT_PICKUPautomatisch wieder aktiviert und deaktiviert, wenn der Nutzer während der Fahrtenfreigabe mit der Karte interagiert hat. - An der Animation des Fahrzeugs bei der Fahrtenfreigabe wurden die folgenden Verbesserungen vorgenommen:
- In der Animation zur Fahrtenfreigabe wird jetzt die Situation berücksichtigt, in der ein Fahrzeug legitimerweise eine bereits zurückgelegte Route zurückfährt.
- Das Fahrzeug wird jetzt in einer geraden Linie animiert, anstatt die Route zwischen Punkten zu interpolieren, wenn dies algorithmisch als angemessen erachtet wird.
- Die Berechtigungen für
FINE_LOCATIONsind nicht mehr erforderlich.
Sonstige Änderungen
- Die folgenden Abhängigkeitsversionen wurden aktualisiert:
- 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. März 2020)
API-Änderungen
TripInfo.getVehicleId(),TripInfo.getNumberOfPassengers(),TripInfo.getIntermediateDestinationIndex(),TripInfo.getTripActiveRoute()undTripInfo.getTripRemainingRoute()wurden hinzugefügt.- Die Klasse
optionswurde hinzugefügt, die während derConsumerApi-Initialisierung verwendet wird, damit dieFleetEngine-Adresse dynamisch festgelegt werden kann. Wenn die API nicht mit einemFleetEngine-Wert aufgerufen wird, versucht sie, ihn aus dem Android-Manifest abzurufen, oder greift auf den Standardwert zurück.
Verbesserungen
- Die Polylinie der Route wird nicht angezeigt, wenn der Fahrtstatus
ARRIVED_AT_PICKUPist. - Die Verfolgung von Fahrzeugen, die von der Route abweichen, wurde verbessert (erfordert DriverSDK 1.15):
- Beim Fahrzeug-Tracking wird das Fahrzeug nicht an der Route ausgerichtet, wenn es am Abholpunkt vorbeifährt.
- Mit der Fahrzeugverfolgung kann das Fahrzeug auch abseits der Straße angezeigt werden, z. B. auf nicht kartierten Parkplätzen.
- Das Fahrzeugsymbol wird jetzt aktualisiert, wenn das Ziel des Fahrers nicht mit dem Ziel in Fleet Engine übereinstimmt.
v0.8.6 (16. Dezember 2019)
API-Änderungen
TripInfo.getVehicleLocation()wurde hinzugefügt.ConsumerMapViewist nicht mehr endgültig.
Änderungen bei der Implementierung
- Die verbleibende Entfernung des aktiven Abschnitts wird jetzt anhand der Serverentfernung (vom Fahrer gemeldet + statische Route, falls zutreffend) anstelle des lokalen Einrastens berechnet. Diese Änderung führt zu genaueren Werten für die verbleibende Entfernung.
Sonstige Änderungen
Neue Abhängigkeiten erforderlich. Weitere Informationen finden Sie in der POM-Datei.
- 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
Logs für die Latenz von Fahrtanfragen hinzugefügt.
Protokolle für Fehler bei Fahrtenantworten hinzugefügt.
Hinweise
- Seit Version 0.8.1 wird das Consumer SDK für Android als jetifiziertes ZIP-Archiv bereitgestellt. Informationen zum De-Jetifizieren finden Sie unter Jetifier: Reverse mode.
v0.8.1 (13. September 2019)
Neue Funktionen
Unterstützung für ConsumerMapView.
ODRD-Artefakte werden jetzt in einem Maven-Repository statt in einer .aar-ZIP-Datei bereitgestellt. Weitere Informationen finden Sie unter Consumer SDK in Ihre App einbinden.
API-Änderungen
ConsumerController.disableAutoCamera()wurde als Gegenfunktion zucenterMapForState()hinzugefügt.VehicleLocation.getUpdateTime()gibt jetzt einen Long-Wert zurück, der den Zeitstempel (in Millisekunden) darstellt.Die
AuthTokenFactory-Schnittstelle wurde vereinfacht, um eine einzelne Methode für die Tokengenerierung bereitzustellen.AuthTokenFactorywurde von einer Schnittstelle in eine abstrakte Klasse geändert, um die Abwärtskompatibilität in Java 7 zu ermöglichen. Diese Änderung ist abwärtskompatibel, aber die alten Methoden zur Generierung von Tokens für einzelne Dienste sind veraltet und werden irgendwann entfernt.
Änderungen bei der Implementierung
Assets sind jetzt auf die Mitte des Symbols zentriert, sodass der Schattenversatz entfällt.
setStateaufJOURNEY_SHARING onStartTripMonitoring(), anstatt auf den Status der beobachteten Fahrt zu warten.Gibt immer Daten für die erste Aktualisierung der Fahrtdaten zurück, auch wenn die Fahrtdaten nicht synchron sind.
Android Map Utils als bereitgestellte Abhängigkeit hinzugefügt.
Fehlerkorrekturen
- Fehlerhafte Proguard-Exportsyntax für grpc keep wurde korrigiert.
v0.7.0 (7. August 2019)
Neue Funktionen
- Unterstützung mehrerer Ziele für die Funktion „Fahrt teilen“.
API-Änderungen
Neue Methoden für
ConsumerTripCallback.onTripIntermediateDestinationsUpdated().onTripETAToNextTripWaypointUpdated().
Neue
ConsumerController-Methoden.getIntermediateDestinations().setIntermediateDestinations(List<TerminalLocation> intermediateDestinations).
Neuer
TripStatuses.TripStatus.ENROUTE_TO_INTERMEDIATE_DESTINATION.TripStatus.ARRIVED_AT_INTERMEDIATE_DESTINATION.
Neue
TripWaypoint-Getter.getETAMillis().getDistanceMeters().
Die Klasse
TripInfowurde hinzugefügt.- Sie können
TripInfofür die aktive Fahrt mitConsumerTripManager.getActiveTripInfo()abrufen.
- Sie können
WaypointType.INTERMEDIATE_DESTINATIONwurde hinzugefügt.MarkerType.TRIP_INTERMEDIATE_DESTINATIONwurde hinzugefügt.ConsumerMapState.JOURNEY_SHARINGwurde aus den zusammengeführtenConsumerMapStatesENROUTE_TO_PICKUP,ARRIVED_AT_PICKUP,ENROUTE_TO_DROPOFFundCOMPLETEerstellt.Die Tabelle „
StateChangeCallbacks“ wurde aktualisiert.onStateJourneySharing()wurde hinzugefügt.onStateWaitingForPickup(),onStateDriverArrived(),onStateEnroute()undonStateEndofTrip()wurden entfernt.
Fehlerkorrekturen
Ein Fehler wurde behoben, bei dem die Route nicht auf den Fahrzeugstandort gekürzt wurde, wenn die Fahrtüberwachung in der Mitte einer aktiven Fahrt (nicht am Anfang der Route) gestartet wurde.
Ein Fehler wurde behoben, durch den Fahrt-Callbacks für Listener, die im TripManager registriert sind, nicht aufgerufen wurden, nachdem der TripManager bereits Fahrtdaten abgerufen hatte.
Der Kamerazoom umfasst jetzt nur noch die aktive Route und den nächsten Wegpunkt der Fahrt (Wegpunkt, der zur Fahrt gehört). Auch wenn der verbleibende Abschnitt sichtbar ist, wird er nie in den Zoom einbezogen. Bisher wurde der Ausstiegspunkt in den Zoom einbezogen, wenn das Fahrzeug entweder auf dem Weg zum Einstiegspunkt war oder dort angekommen war. Das ist nicht mehr der Fall.
Verbesserungen
Füllen Sie den nullten verbleibenden Wegpunkt mit Fahrerdaten. Die Liste der verbleibenden Wegpunkte wird von
ConsumerTripCallback.onTripRemainingWaypointsUpdatedundTripInfo.getRemainingWaypoints()zurückgegeben.Aktualisieren Sie die voraussichtlichen Ankunftszeiten aller verbleibenden Wegpunkte, wenn sich die voraussichtliche Ankunftszeit für den ersten Wegpunkt in der Liste ändert.
Die automatische Kamera wird erst wieder aktiviert, wenn der Fahrer am Abholort ankommt. Bisher wurde die automatische Kamera bei jeder Änderung des Fahrtstatus auf „Aktiviert“ zurückgesetzt. Die automatische Kamera ist weiterhin standardmäßig aktiviert. Die Autokamera wird nicht wieder aktiviert, wenn eine neue aktive Fahrt ohne einen neuen Aufruf von
startTripMonitoring()festgelegt wird.
v0.6.1 (26. Juni 2019)
Neue Funktionen
- Unterstützung für Fahrgemeinschaften, um Fahrten zu teilen.
API-Änderungen
ConsumerController.getConsumerMapStyle()gibt jetztConsumerMapStyleanstelle vonTask<ConsumerMapStyle>zurück.PolylineStyle.setZIndex()wurde hinzugefügt.
Fehlerkorrekturen
Die Routenanimation wird jetzt nur noch ausgeführt, wenn das Routensegment synchronisiert ist. Das verbessert die Nutzerfreundlichkeit.
Das „Flackern“ des Fahrzeugs während der Animationsinterpolation wurde behoben, wenn die Standortaktualisierungen des Fahrers zeitlich nah beieinander liegen.
Es wurde ein Fehler behoben, bei dem das Fahrzeug am Anfang der Route statt an seiner aktuellen Position startete, wenn die Fahrtüberwachung mitten in einer aktiven Fahrt begann.
Die Polylinie der aktiven Route wird über der verbleibenden Route angezeigt, wenn sie sich überschneiden.
Verbesserungen
- Machen Sie jetzt die gRPC-Klasse
Statusmit nicht verschleierten Methoden verfügbar.
v0.5.1.01 (17. Mai 2019)
Neue Funktionen
- Unterstützung für aufeinanderfolgende Fahrten bei der Fahrtenfreigabe.
API-Änderungen
- Neue
ConsumerController-Klasse.
PolylineType
| Alter Wert | Neuer Wert |
|---|---|
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
| Alter Wert | Neuer Wert |
|---|---|
onTripRouteUpdated |
onTripActiveRouteUpdated |
onTripRemainingDistanceUpdated |
onTripActiveRouteRemainingDistanceUpdated |
onTripRemainingWaypointsUpdated() |
ConsumerController
- Sie können jetzt Callbacks für Status festlegen, ohne den Status einzugeben.
| Methode | Rückruf |
|---|---|
startPickupSelection |
setPickupSelectionCallback |
startDropoffSelection |
setDropoffSelectionCallback |
startTripPreview |
setTripPreviewSelectionCallback |
- Mit
ConsumerController.setLanguage(String languageCode)können Sie die Sprache festlegen, die in Fleet Engine-Aufrufen verwendet wird (z. B. für Beschreibungen von Abholorten).
Verbesserungen
- Der Status der Auswahl des Ausstiegsorts hat jetzt eine ziehbare Markierung.
- Kameraanimation im Status „
INITIALIZE“ entfernt. ManagedChannelBuilderwurde durchAndroidChannelBuilderersetzt.