Das Navigation SDK for Android erweitert das Maps SDK for Android um Navigationsfunktionen. Wenn Ihre Android-App, die auf Google Maps basiert, 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 also 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 Ihr Code sie aufruft. Sie lassen sich in die folgenden Kategorien einteilen:
- APIs für Aktivitätstracking auf Wearables.
- 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) konnten Sie normalerweise den Inaktivmodus 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.
Andere APIs
- Das Festlegen einer benutzerdefinierten LocationSource hat im NavSDK keine Auswirkungen.
- Alle MapsInitializer-APIs.
- RuntimeRemoteException.
APIs, die nur für die Nutzung durch Kunden von Mobilitätsdiensten vorgesehen sind
Das Navigation SDK enthält mehrere APIs, die nur für Kunden von Mobility Services vorgesehen sind, die von Google pro Transaktion abgerechnet werden. Wenn Sie kein Mobility Services-Kunde sind, sind die folgenden Methoden No-Ops:
NavigationTransactionRecorder.pickup()NavigationTransactionRecorder.dropoff()NavigationTransactionRecorder.generatedTransactionId()Navigator.fetchRouteInfo()Navigator.setTransactionIds()