Consumer SDK for Android – Versionshinweise

Dieser Abschnitt enthält Versionshinweise für das Consumer SDK for Android.

Ankündigung: Einstellung der Unterstützung für API-Level 23, 24 und 25

Gemäß der Richtlinie zur Unterstützung von mobilen Betriebssystemversionen stellen wir 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 ein.

Versionen des Consumer SDK for Android, die ab dem vierten Quartal 2025 veröffentlicht werden, unterstützen mindestens Android 8 (API-Level 26). Ältere SDK-Versionen unterstützen weiterhin Android 6 und 7.

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 in den Build-Abhängigkeiten Ihrer Anwendung eine Version des Consumer SDK for Android an, um zu steuern, wann Sie das unterstützte Mindestbetriebssystem für neue Versionen Ihrer App anheben.

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 for Android müssen Apps auf Kotlin 2.1 aktualisiert werden.

Fehlerkorrekturen

  • Verwenden Sie die Polylinienlänge anstelle der Luftlinie für interne Animationsentscheidungen.

3.1.0 (10. März 2025)

  • Verbesserungen bei der internen Protokollierung.

3.0.0 (06. Dezember 2024)

Änderungen an Abhängigkeiten und Konfigurationen

2.99.0 (25. November 2024)

Fehlerkorrekturen

  • Behebt den ANR-Fehler, der auftritt, wenn die Ausführung von ConsumerApi.cleanUp() zu lange dauert. Die Einführung erfolgt nach und nach (beginnend bei 0%), sobald die Version integriert wurde.
  • Es wurde ein Problem behoben, bei dem Fahrer gRPC-Fehler mit dem Code „INTERNAL“ und der Meldung „Panic! Das ist ein Fehler.“ Die Einführung erfolgt nach und nach (beginnend bei 0%), sobald die Version integriert wurde.

2.3.0 (2. August 2024)

API-Änderungen

2.2.0 (7. Mai 2024)

API-Änderungen

  • Unterstützungs-API 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

  • Es wurde ein Absturz behoben, der auftritt, wenn das SDK während des Anwendungslebenszyklus mehrmals initialisiert wird.

API-Änderungen

  • Führt eine Methode zum Abrufen der vom SDK erstellten GoogleMap-Instanz ein (ConsumerGoogleMap.getGoogleMap()).
  • Es wird eine API eingeführt, mit der die vom SDK erstellten Marker-Instanzen abgerufen werden können, um das Fahrzeug darzustellen (ConsumerController.getConsumerMarker()).
  • Es wird eine API eingeführt, mit der Client-basierte Schätzungen für Zeit und Entfernung während der Funktion „Fahrten teilen“ (ProjectedRouteEta) abgerufen werden können.

1.99.2 (3. November 2023)

  • Es wurde ein Absturz behoben, der auftritt, wenn das SDK von einem Remote-Prozess initialisiert wird, der von der Anwendung getrennt ist.

  • Ein Absturz wird behoben, der auftritt, wenn eine Kameraanimation ausgeführt wird und nicht genügend vertikaler oder horizontaler Platz für den Abstand vorhanden ist. Dies geschieht nur beim neuesten Karten-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

  • Die ConsumerApi.initialize() löst eine Ausnahme aus, wenn sie aufgerufen wird, während bereits eine API-Instanz vorhanden ist. Um dieses Problem zu umgehen, rufen Sie zuerst ConsumerApi.getInstance() auf und prüfen Sie den zurückgegebenen Task, um festzustellen, ob bereits eine API-Instanz vorhanden ist.

2.0.0 (15. September 2023)

Ankündigung: Nicht abwärtskompatible Änderungen

  • Das erforderliche Mindest-API-Level wurde von 21 auf 23 aktualisiert.

  • Die Anforderung an die Maps SDK-Version wurde von v17.0.0 auf v18.1.0 aktualisiert.

  • Die Mindestversion der Kotlin-Standardbibliothek wurde von v1.6.10 auf v1.9.0 aktualisiert.

  • Versionen der Google Play-Dienste-Abhängigkeiten aktualisieren

    • Die Mindestanforderung für die play-services-base-Bibliotheksversion wurde von v18.0.1 auf v18.2.0 aktualisiert.

    • Die Mindestanforderung für die Version der play-services-basement-Bibliothek wurde von Version 18.0.0 auf Version 18.2.0 aktualisiert.

    • Die Mindestversion der play-services-location-Bibliothek 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 v18.0.1 auf v18.0.2 aktualisiert.

  • Fügt die androidx.room:room-runtime-Bibliothek 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 Mindestanforderung für die Version von com.google.android.datatransport:transport-backend-cct wurde von v3.0.0 auf v3.1.9 aktualisiert.

    • Die Mindestversion von com.google.android.datatransport:transport-runtime wurde von v3.0.1 auf v3.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 v2.0.0 auf v2.6.1 aktualisiert.

    • Die Mindestversion von androidx.appcompat:appcompat wurde von v1.0.0 auf v1.6.1 aktualisiert.

    • Die Mindestversion von androidx.fragment:fragment wurde von v1.0.0 auf v1.6.1 aktualisiert.

  • Die folgenden zuvor eingestellten APIs werden entfernt: ConsumerTrip, ConsumerTripCallback, ConsumerTripManager, ConsumerTripOptions. Sie wurden durch TripModel, TripModelCallback, TripModelManager und TripModelOptions ersetzt.

  • Apps, die das Consumer SDK verwenden, müssen jetzt targetSdkVersion mit API 31 oder höher und compileSdkVersion mit API 33 oder höher haben.

  • Für Apps, die das Consumer SDK verwenden, muss jetzt die Unterstützung für Java 8-Bibliotheken 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.

  • Bei Apps, die das Consumer SDK verwenden, muss Desugaring aktiviert sein. Eine Anleitung finden Sie unter https://developer.android.com/studio/write/java8-support#library-desugaring.

  • Die ConsumerApi.initialize()-Methode löst jetzt eine Ausnahme aus, wenn sie aufgerufen wird, während bereits eine API-Instanz erstellt wurde. Die von ConsumerApi.getInstance() zurückgegebene Task muss verwendet werden, um festzustellen, ob zuvor eine API-Instanz erstellt wurde.

Ankündigung: Einstellung von APIs

  • Die Annotationsklassen Trip.TripStatus und Trip.TripType werden verworfen. Stattdessen werden die Annotationsklassen TripInfo.TripStatus und TripInfo.TripType hinzugefügt.

    • Im Rahmen dieser Änderung wird TripModelCallback#onTripStatusUpdated(TripInfo tripInfo, @Trip.TripStatus int status) eingestellt und durch TripModelCallback#onTripStatusUpdate(TripInfo tripInfo, @TripInfo.TripStatus int status) ersetzt.

    • Im Rahmen dieser Änderung wird TripInfo#getTripStatus() eingestellt und durch TripInfo#getCurrentTripStatus() ersetzt.

    • Im Rahmen dieser Änderung wird TripInfo#getTripType() eingestellt und durch TripInfo#getCurrentTripType() ersetzt.

  • Die Klasse Trip wird eingestellt.

Weitere Änderungen und Fehlerkorrekturen

  • Unterstützt das Anfordern des neuesten Maps SDK-Renderers. Weitere Informationen finden Sie unter Neuer Karten-Renderer.

  • Unterstützt das Maps SDK in den Versionen 18.1.0(einschließlich) bis 19.0.0(ausschließlich).

  • Behebt den Fehler „Zeitlimit überschritten“ bei der internen Kommunikation zwischen dem SDK und dem Google-Backend.

  • Es wurde ein Rendering-Problem für kleine Bildschirme und den Bild-im-Bild-Modus behoben.

Migrationsanleitung

1.99.1 (31. August 2023)

Fehlerkorrekturen

  • Ein Absturz wurde behoben, der auftritt, wenn die SDK-Hostaktivität oder das SDK-Hostfragment gelöscht wird.

  • Behebt einen Absturz, der auftritt, wenn die Abmessungen der MapView 0 sind (entweder Höhe oder Breite).

  • Behebt einen Absturz, der auftritt, wenn der Standort des Fahrzeugs auf die Polylinie der Route projiziert wird.

Verbesserungen

  • Verhindert, dass das SDK abstürzt, wenn die Hostanwendung per Sideloading installiert wird und die visuellen Standardressourcen nicht vorhanden sind.

1.99.0 (22. Juni 2023)

Fehlerkorrekturen

  • Es wurde ein Rendering-Problem für kleine Bildschirme und für den Bild-im-Bild-Modus behoben.

  • Behebt das Flackern von Fahrzeugen beim Teilen von Fahrten.

1.2.1 (7. Juni 2023)

Fehlerkorrekturen

  • Ein Fehler wurde behoben, der dazu führte, dass das Fahrzeug beim Teilen von Fahrten flackerte.

1.2.0 (21. November 2022)

Fehlerkorrekturen

  • Es wurde ein Fehler behoben, der dazu führte, dass im onTripActiveRouteTrafficUpdated-Callback leerer Traffic gemeldet wurde.

Neue Funktionen

  • „Verkehrsabhängige Polylinien“ ist jetzt allgemein verfügbar.

1.1.2 (27. Oktober 2022)

Fehlerkorrekturen

  • Es wurde ein Fehler behoben, der dazu führte, dass die Routen-Polylinie verschwand, nachdem JourneySharingSession für eine TripModel mehrmals gestartet wurde.

Ankündigung: Eingeschränkte Unterstützung für Android 5 (25. Juli 2022)

Für unsere SDK-Version 1.1.1 bieten wir ein zusätzliches Jahr Support für Apps unter Android 5 für die API-Levels 21 und 22.

Was das bedeutet:

  • Das Consumer SDK, das auf Ihren Android-Apps ausgeführt wird, unterstützt bis zum 30. Juni 2023 mindestens Android 5 (API-Level 21).

  • Ab dem 30. Juni 2023 unterstützen wir nur noch Android-API-Levels 23 und höher. Das bedeutet, dass wir Android API-Level 21 und 22 ab diesem Datum in allen SDK-Versionen nicht mehr unterstützen. Das bedeutet, dass Fehler im Zusammenhang mit Android 21 oder 22 in einer beliebigen SDK-Version (einschließlich 4.x) nicht behoben werden und wir nicht garantieren können, dass sich die SDKs korrekt verhalten.

v1.1.1 (25. Juli 2022)

Änderung der Abhängigkeit

  • Das unterstützte Mindest-Android-API-Level wird auf 21 herabgestuft.

v1.1.0 (28. April 2022)

  • Interne Verbesserungen.

v1.0.19 (17. März 2022)

Fehlerkorrekturen

  • Ein Speicherleck in der Klasse ConsumerApi wurde behoben.

v1.0.14 (30. November 2021)

Das unterstützte Mindest-API-Level für Android ist jetzt 23.

API-Änderungen

  • Änderungen an den Klassen ConsumerTrip und ConsumerTripManager.

    • Einige Methodennamen wurden bereinigt, um ihre Bedeutung zu verdeutlichen und sie an die iOS-Plattform anzupassen.
  • Änderungen an ConsumerTripCallback, ConsumerTrip und TripInfo

    • Einige Klassennamen wurden geändert, um sie an iOS anzugleichen. Einführung von TripModel, TirpModelManager und TripModelOptions zur Einstellung von ConsumerTrip, ConsumerTripManager und ConsumerTripOptions.

    • Einige Methodennamen wurden bereinigt. JavaDoc-Kommentare für Methoden wurden überarbeitet oder hinzugefügt, um die Bedeutung klarer zu vermitteln.

    • Die Fehlerbehandlung wurde verbessert.

Stile anpassen

  • Eingestellte Legacy-Wrapper

    • MarkerStyleOptions und PolylineStyleOptions wurden eingestellt und durch MarkerOptions und PolylineOptions ersetzt, die beide mit dem Maps SDK geteilt werden.

Absturzüberwachung

  • Absturzerkennung und ‑protokollierung wurden hinzugefügt.

    • Es wurde eine Option hinzugefügt, mit der Sie diese Funktion deaktivieren können. Dies geschah im Rahmen einer größeren Geo-weiten Initiative zur Absturzüberwachung.

Änderungen der Authentifizierung

  • Entfernen Sie unnötige Methoden aus den Authentifizierungsschnittstellen.
    • Der Parameter ServiceType wurde entfernt.

v0.9.28 (18. Mai 2021)

API-Änderungen

  • Alle ConsumerTripCallback-Methoden wurden aktualisiert, sodass TripInfo als Parameter verwendet wird.
  • ConsumerTrip.isRefreshing() wurde hinzugefügt. Damit wird angegeben, ob ConsumerTrip aktiv mit aktuellen Fahrtinformationen von Fleet Engine aktualisiert wird.
  • ConsumerTripCallback.onTripRemainingRouteDistanceUpdated() wurde hinzugefügt.
  • ConsumerTripCallback.onTripRemainingRouteUpdated() wurde hinzugefügt.
  • Ersetzen Sie Guava-Rückgabetypen (ImmutableSet, ImmutableList) durch entsprechende java.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

  • Es wurde ein Race-Condition-Problem behoben, bei dem das SDK aufgrund von Interaktionen mit der Karte abstürzen konnte, bevor sie bereit war.
  • Das SDK enthält keine unverschleierte Kopie von io.grpc mehr.
  • Ein Fehler wurde behoben, der auf bestimmten Geräten zu flackernden Polylinien für den Verkehr führte. Die Enden von Traffic-Segmenten sind jetzt abgerundet.

v0.9.15 (7. Oktober 2020)

API-Änderungen

  • Mit diesem Release werden verkehrsabhängige Polylinien eingeführt. – TripInfo.getActiveRouteTraffic() und TripInfo.getRemainingRouteTraffic() wurden hinzugefügt.
    • ConsumerTripCallback.onTripActiveRouteTrafficUpdated() und ConsumerTripCallback.onTripRemainingRouteTrafficUpdated() wurden hinzugefügt, um anzuzeigen, wann sich der Traffic geändert hat.
    • PolylineStyleOptions für die Anpassung des Traffics hinzugefügt (setTrafficEnabled(), setTrafficColorNoData(), setTrafficColorNormal(), setTrafficColorSlow(), setTrafficColorTrafficJam()).
    • PolylineStyleOptions.TRAFFIC_Z_INDEX_ADDITION wurde offengelegt.
    • TripWaypoint.getTrafficData() wurde hinzugefügt.
    • Der Datentyp TrafficData wurde hinzugefü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 Datenschicht (z. B. ConsumerTripManager) und der Benutzeroberflächenschicht (z. B. JourneySharingSession) einführt. Informationen zur Migration zur neuen Architektur finden Sie im Leitfaden zur Modularisierungsmigration. – Das ConsumerTrip-Objekt wird jetzt über ConsumerTripManager.getTrip() abgerufen.
    • ConsumerTrip.unregisterCallback wurde in ConsumerTrip.unregisterTripCallback umbenannt.
    • ConsumerTrip.isCallbackRegistered wurde in ConsumerTrip.isTripCallbackRegistered umbenannt.
    • ConsumerTrip.setConsumerTripOptions() und ConsumerTrip.getConsumerTripOptions() wurden hinzugefügt.
    • ConsumerTrip.setAutoRefreshInterval() wurde entfernt.
  • Nicht für die Freigabe von Fahrten verwendete APIs wurden entfernt.
    • Die Dichtekarte für Fahrzeuge wurde entfernt.
    • Der Status der Fahrtvorschau wurde entfernt.
    • Der Status der Auswahl der Abholung wurde entfernt.
    • Der Status der Auswahl des Abgabeorts wurde entfernt.
    • Die folgenden Markertypen wurden entfernt: SELECTED_PICKUP_POINT, SUGGESTED_PICKUP_POINT, HIGHLIGHTED_PICKUP_POINT und SELECTED_DROPOFF_POINT.
  • OnConsumerMarkerClickCallback und ConsumerMapReadyCallback wurden von Schnittstellen in abstrakte Klassen geändert.
  • ConsumerController.getCameraUpdate(), ConsumerController.isAutoCameraEnabled() und ConsumerController.enableAutoCamera() wurden hinzugefügt.
  • Die benutzerdefinierte FAB und die zugehörigen Methoden (ConsumerController.isMyLocationFabEnabled und ConsumerController.setMyLocationFabEnabled) wurden entfernt.

Änderungen bei der Implementierung

  • Eine ConsumerTripCallback, die mit oder ohne LifecycleOwner registriert ist, wird auf TripStatus.COMPLETE oder TripStatus.CANCELED nicht mehr automatisch abgemeldet.
  • AutoCamera ist jetzt standardmäßig aktiviert und wird nicht automatisch reaktiviert oder deaktiviert. Bisher wurde AutoCamera automatisch bei TripStatus.ARRIVED_AT_PICKUP wieder aktiviert und deaktivierte sich selbst, wenn der Nutzer während der Routenfreigabe mit der Karte interagierte.
  • Die folgenden Verbesserungen wurden an der Fahrzeuganimation für die Routenfreigabe vorgenommen:
    • Die Animation für das Teilen von Fahrten berücksichtigt jetzt auch, dass ein Fahrzeug möglicherweise auf einer bereits zurückgelegten Route zurückfährt.
    • Das Fahrzeug wird jetzt in einer geraden Linie animiert, anstatt die Route zwischen den Punkten zu interpolieren, wenn dies algorithmisch als angemessen erachtet wird.
  • FINE_LOCATION-Berechtigungen sind 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

Version 0.9.1 (23. März 2020)

API-Änderungen

  • TripInfo.getVehicleId(), TripInfo.getNumberOfPassengers(), TripInfo.getIntermediateDestinationIndex(), TripInfo.getTripActiveRoute() und TripInfo.getTripRemainingRoute() wurden hinzugefügt.
  • Die Klasse options wurde hinzugefügt, die während der Initialisierung von ConsumerApi verwendet wird und mit der die FleetEngine-Adresse dynamisch festgelegt werden kann. Wenn die API nicht mit einem FleetEngine-Wert aufgerufen wird, wird versucht, ihn aus dem Android-Manifest abzurufen. Andernfalls wird der Standardwert verwendet.

Verbesserungen

  • Die Routenlinie wird nicht angezeigt, wenn der Fahrtstatus ARRIVED_AT_PICKUP ist.
  • Die Fahrzeugortung außerhalb der Route wurde verbessert (erfordert DriverSDK 1.15):
    • Bei der Fahrzeugverfolgung wird das Fahrzeug nicht an die Route angepasst, wenn es am Abholort vorbeifährt.
    • Durch die 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.

  • ConsumerMapView ist nicht mehr endgültig.

Änderungen bei der Implementierung

  • Die verbleibende Entfernung der aktiven Etappe wird jetzt anhand der Serverentfernung (vom Fahrer gemeldete und statische Route, sofern zutreffend) anstelle des lokalen Snappings berechnet. Durch diese Änderung werden genauere Werte für die verbleibende Distanz berechnet.

Sonstige Änderungen

  • Neue Abhängigkeiten erforderlich. Weitere Informationen finden Sie in der Datei „.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
  • Es wurden Logs für die Latenz von Fahrtanfragen hinzugefügt.

  • Protokolle für Fehler bei der Antwort auf Fahrten hinzugefügt.

Hinweise

  • Seit Version 0.8.1 wird das Consumer SDK for Android als jetifiziertes ZIP-Archiv ausgeliefert. Informationen zum De-Jetifizieren finden Sie unter Jetifier: Reverse mode.

v0.8.1 (13. September 2019)

Neue Funktionen

API-Änderungen

  • ConsumerController.disableAutoCamera() wurde als Gegenfunktion zu centerMapForState() hinzugefügt.

  • VehicleLocation.getUpdateTime() gibt jetzt einen Long-Wert zurück, der den Zeitstempel (in Millisekunden) darstellt.

  • Die AuthTokenFactory-Schnittstelle wurde vereinfacht, sodass nur noch eine Methode für die Tokengenerierung verfügbar ist. AuthTokenFactory wurde von einer Schnittstelle in eine abstrakte Klasse geändert, um die Abwärtskompatibilität in Java7 zu ermöglichen. Diese Änderung ist abwärtskompatibel, aber die alten Methoden zum Generieren von Tokens für einzelne Dienste sind veraltet und werden schließlich entfernt.

Änderungen bei der Implementierung

  • Assets werden jetzt auf das Symbol zentriert, sodass kein Schattenversatz mehr auftritt.

  • setState bis JOURNEY_SHARING onStartTripMonitoring(), anstatt auf den Status der überwachten Fahrt zu warten.

  • Gibt immer Daten für die erste Aktualisierung der Fahrtdaten zurück, auch wenn die Fahrtdaten nicht synchronisiert sind.

  • Android Map Utils wurde als bereitgestellte Abhängigkeit hinzugefügt.

Fehlerkorrekturen

  • Die fehlerhafte ProGuard-Exportsyntax für „grpc keep“ wurde korrigiert.

Version 0.7.0 (7. August 2019)

Neue Funktionen

  • Unterstützung mehrerer Ziele für die Funktion „Fahrten teilen“.

API-Änderungen

  • Neue Methoden für ConsumerTripCallback

    • onTripIntermediateDestinationsUpdated().
    • onTripETAToNextTripWaypointUpdated().
  • Neue ConsumerController-Methoden.

    • getIntermediateDestinations().
    • setIntermediateDestinations(List<TerminalLocation> intermediateDestinations).
  • Neu: TripStatuses.

    • TripStatus.ENROUTE_TO_INTERMEDIATE_DESTINATION.
    • TripStatus.ARRIVED_AT_INTERMEDIATE_DESTINATION.
  • Neue TripWaypoint-Getter.

    • getETAMillis().
    • getDistanceMeters().
  • Die Klasse TripInfo wurde hinzugefügt.

    • Sie können TripInfo für die aktive Fahrt mit ConsumerTripManager.getActiveTripInfo() abrufen.
  • WaypointType.INTERMEDIATE_DESTINATION wurde hinzugefügt.

  • MarkerType.TRIP_INTERMEDIATE_DESTINATION wurde hinzugefügt.

  • ConsumerMapState.JOURNEY_SHARING aus zusammengeführten ConsumerMapStates ENROUTE_TO_PICKUP, ARRIVED_AT_PICKUP, ENROUTE_TO_DROPOFF und COMPLETE erstellt.

    • Die Tabelle „StateChangeCallbacks“ wurde aktualisiert.

    • onStateJourneySharing() wurde hinzugefügt.

    • onStateWaitingForPickup(), onStateDriverArrived(), onStateEnroute() und onStateEndofTrip() wurden entfernt.

Fehlerkorrekturen

  • Es wurde ein Fehler behoben, durch den die Route nicht auf den Standort des Fahrzeugs zugeschnitten wurde, wenn die Fahrtüberwachung in der Mitte einer aktiven Fahrt (nicht am Anfang der Route) gestartet wurde.

  • Ein Fehler wurde behoben, bei dem Trip-Callbacks für Listener, die im TripManager registriert sind, nicht aufgerufen werden, nachdem der TripManager bereits Trip-Daten abgerufen hat.

  • 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 Abgabeort in den Zoom einbezogen, wenn das Fahrzeug entweder auf dem Weg zum Abholort war oder dort angekommen ist. Das ist nicht mehr der Fall.

Verbesserungen

  • Füllen Sie den nullten verbleibenden Wegpunkt mit Fahrerdaten aus. Die Liste der verbleibenden Wegpunkte wird von ConsumerTripCallback.onTripRemainingWaypointsUpdated und TripInfo.getRemainingWaypoints() zurückgegeben.

  • Aktualisieren Sie alle verbleibenden geschätzten Ankunftszeiten für Wegpunkte, wenn sich die geschätzte Ankunftszeit für den ersten Wegpunkt in der Liste ändert.

  • Die automatische Kamera soll nur dann wieder aktiviert werden, wenn der Fahrer am Abholort angekommen ist. Bisher wurde die automatische Kamera bei jeder Änderung des Fahrstatus auf „Aktiviert“ zurückgesetzt. Die automatische Kamera ist weiterhin standardmäßig aktiviert. Die automatische Kamera 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 bei der Freigabe von Routen.

API-Änderungen

  • ConsumerController.getConsumerMapStyle() gibt jetzt ConsumerMapStyle anstelle von Task<ConsumerMapStyle> zurück.

  • PolylineStyle.setZIndex() wurde hinzugefügt.

Fehlerkorrekturen

  • Die Routenanimation wird jetzt nur noch angezeigt, wenn das Routensegment synchronisiert ist. Das sorgt für eine höhere Nutzerfreundlichkeit.

  • Das „Flimmern“ von Fahrzeugen während der Animationsinterpolation wurde behoben, wenn die Standortaktualisierungen des Fahrers nahe beieinander liegen.

  • Es wurde ein Fehler behoben, bei dem das Fahrzeug am Anfang der Route statt am aktuellen Standort startet, wenn die Fahrtüberwachung in der Mitte einer aktiven Fahrt beginnt.

  • Die Polylinie der aktiven Route wird über der verbleibenden Route angezeigt, wenn sie sich überschneiden.

Verbesserungen

  • Stellen Sie nun die gRPC-Klasse Status mit nicht verschleierten Methoden bereit.

v0.5.1.01 (17. Mai 2019)

Neue Funktionen

  • Back-to-Back-Unterstützung für die Funktion „Fahrten teilen“.

API-Änderungen

  • Neue Klasse ConsumerController.

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 Rückrufe für Status festlegen, ohne den Status aufrufen zu müssen.
Methode Rückruf
startPickupSelection setPickupSelectionCallback
startDropoffSelection setDropoffSelectionCallback
startTripPreview setTripPreviewSelectionCallback
  • Mit ConsumerController.setLanguage(String languageCode) können Sie die Sprache für FleetEngine-Aufrufe festlegen, z. B. für Beschreibungen von Abholorten.

Verbesserungen

  • Für die Auswahl des Abgabeorts gibt es jetzt eine verschiebbare Markierung.
  • Die Kameraanimation im Status INITIALIZE wurde entfernt.
  • ManagedChannelBuilder wurde durch AndroidChannelBuilder ersetzt.