Das Navigation SDK for Android erweitert das Maps SDK for Android um Navigationsfunktionen. Wenn Ihre Google Maps-basierte Android-App Navigationsfunktionen benötigt, muss sie das Navigation SDK for Android verwenden.
Die meisten Funktionen im Maps SDK for Android verhalten sich jedoch im Navigation SDK for Android genauso. Sie greifen darauf über dasselbe com.google.android.gms.maps-Paket zu, unabhängig davon, welche SDK-Abhängigkeit Sie verwenden.
Wenn Ihre App also bisher vom Maps SDK for Android abhängig war, können Sie die Abhängigkeit auf das Navigation SDK for Android ändern, ohne dass die vorhandene Funktionalität Ihrer App beeinträchtigt wird. Es gibt jedoch zwei wichtige Ausnahmen:
- APIs, die eine Ausnahme auslösen.
- APIs, die im NavSDK nicht funktionieren und beim Aufruf keine Auswirkungen haben.
Diese Ausnahmen werden im Folgenden beschrieben.
APIs, die eine Ausnahme auslösen
Die folgende Funktion löst eine Ausnahme aus, wenn sie von Ihrer Anwendung aktiviert wird:
APIs ohne Funktionalität im Navigation SDK
Die folgenden APIs haben im Navigation SDK keine Funktion, haben aber auch keine Auswirkungen, wenn sie von Ihrem Code aufgerufen werden. Sie lassen sich in folgende Kategorien einteilen:
- APIs für Wearable-Aktivitäten.
- Aktivieren Sie stattdessen den TBT-Feed, wenn Sie diese Funktion im Navigation SDK for Android nutzen möchten.
- Andere APIs.
APIs für Wearables
Mit GoogleMapOptions.ambientEnabled(boolean enabled) können Sie normalerweise den Inaktivmodus für Wearable-Apps deaktivieren oder aktivieren. Außerdem gibt es in MapView und MapFragment die Methoden onEnterAmbient und onExitAmbient, die jedoch keine Auswirkungen haben, wenn sie aufgerufen werden. Verwenden Sie für Wearables stattdessen den TBT-Feed.
Andere APIs
- Das Festlegen einer benutzerdefinierten LocationSource hat im NavSDK keine Auswirkungen.
- Alle MapsInitializer-APIs.
- RuntimeRemoteException.
APIs, die nur für Kunden von Mobility Services vorgesehen sind
Das Navigation SDK enthält mehrere APIs, die nur für Kunden von Mobility Services vorgesehen sind. Die Abrechnung erfolgt durch Google pro Transaktion. Wenn Sie kein Mobility Services-Kunde sind, haben die folgenden Methoden keine Auswirkungen:
NavigationTransactionRecorder.pickup()NavigationTransactionRecorder.dropoff()NavigationTransactionRecorder.generatedTransactionId()Navigator.fetchRouteInfo()Navigator.setTransactionIds()