Navigation SDK for Android は、Maps SDK for Android にナビゲーション機能を追加します。Google マップを利用した Android アプリにナビゲーション機能が必要な場合は、Navigation SDK for Android に依存する必要があります。
ただし、Maps SDK for Android のほとんどの関数は、Navigation SDK for Android でも同じように動作します。使用する SDK 依存関係に関係なく、同じ com.google.android.gms.maps パッケージを使用してアクセスします。つまり、以前に Maps SDK for Android に依存していたアプリの場合、アプリの既存の機能に影響を与えることなく、依存関係を Navigation SDK for Android に変更できます。ただし、次の 2 つの例外があります。
- 例外をスローする API。
- NavSDK で機能せず、呼び出しても影響がない API。
これらの例外については、以下で説明します。
例外をスローする API
アプリケーションで次の関数を有効にすると、例外がスローされます。
Navigation SDK で機能しない API
次の API は、Navigation SDK では機能しませんが、コードで呼び出しても影響はありません。これらは次のカテゴリに分類されます。
- ウェアラブル アクティビティ用の API。
- Navigation SDK for Android でこの機能を使用する場合は、代わりに TBT フィードを有効にします。
- その他の API。
ウェアラブル向け API
通常、GoogleMapOptions.ambientEnabled(boolean enabled) を使用すると、ウェアラブル アプリの常に画面表示モードを有効または無効にできます。また、onEnterAmbient メソッドと onExitAmbient メソッドは MapView と MapFragment に存在しますが、呼び出しても影響はありません。ウェアラブルの場合は、代わりに TBT フィードを使用します。
その他の API
- カスタム LocationSource を設定しても、NavSDK では何も行われません。
- すべての MapsInitializer API。
- RuntimeRemoteException。
モビリティ サービスのお客様のみが使用することを目的とした API
Navigation SDK には、モビリティ サービスのお客様のみが使用できる API がいくつかあります。これらの API は、Google からトランザクションごとに課金されます。Mobility Services のお客様でない場合、次のメソッドは何も行いません。
NavigationTransactionRecorder.pickup()NavigationTransactionRecorder.dropoff()NavigationTransactionRecorder.generatedTransactionId()Navigator.fetchRouteInfo()Navigator.setTransactionIds()