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