よくある質問
プロダクトの詳細
- Navigation SDK の利用規約の通知はどのように表示すればよいですか?
- 音声案内はどの言語に対応していますか?
- ユーザーがナビゲーション モードを終了したときに、方位が維持されるかどうか。
- ルートの開始時または変更時にポリラインを使用できますか?
- アプリユーザーはモバイル版 Google マップをインストールする必要がありますか?
- Navigation SDK は、レストランなどの目的地付近の駐車場を特定できますか?
- Navigation SDK では、曲がり角に近づいたときに車線の交通方向が表示されますか?
- Navigation SDK はどのバージョンの JDK をサポートしていますか?
ネットワークと接続
- Navigation SDK は、ネットワーク接続が不安定な場合にどのように対処しますか?
- Navigation SDK は、GPS 信号が弱い場合や失われた場合、どのように処理しますか?
- オフライン モードは利用できますか?
データ
- ルートを開始する前に、ルート内のすべての停車地/目的地を取得できますか?
- ルートの開始時にターンバイターン方式のルート案内を利用できますか?
- 予定到着時刻(ETA)はアプリユーザーにどのように通知されますか?
- ナビゲーションがフォアグラウンドにない場合、
RoadSnappedLocationProviderを使用してユーザーの現在のスナップされた位置情報を取得できますか? - Navigation SDK はジオフェンスをサポートしていますか?
- ナビゲーション アプリがバックグラウンドで動作しているときに通知を無効にできますか?
- Google が保持している取引のログを確認するにはどうすればよいですか?
UI のカスタマイズ
- 最適ルートのオプションを色分けできますか?
- Navigation SDK で最終目的地の到着予定時刻を表示できますか?
- 到着予定時刻の更新を非表示にするにはどうすればよいですか?
- ヘッダー カードとフッター カードで使用できる UI カスタマイズはどれですか?
ルーティング
- ユーザーに特定のルートを提供したり、代替ルートを削除したりできますか?
- デフォルトの目的地とは異なるラベルをユーザーに表示できますか?
- Navigation SDK を使用して、定義された経路からの逸脱を追跡できますか?
- ユーザーはルートを完了せずにナビゲーションを終了できますか?
- Navigation SDK は、トラックや大型車両のルート検索とナビゲーションに対応していますか?
シミュレータ
Workflows
モビリティ サービス
- モビリティ サービスのお客様にとって、Navigation SDK の使用はどのように異なりますか?
- Mobility Services のお客様かどうかを確認するにはどうすればよいですか?
- モビリティ サービスのお客様に対する Navigation SDK の課金方法を教えてください。
- モビリティ サービスのお客様のみが使用できる Navigation SDK API はどれですか?
- モビリティ サービスのお客様は、モビリティ サービス以外の Navigation SDK の実装も使用できますか?
プロダクトの詳細
-
アプリは、各ユーザーが同意する必要がある Navigation SDK の利用規約の通知を含むダイアログを実装する必要があります。このダイアログでは、ユーザーが利用規約に同意できます。利用規約のテキスト ファイルは、Navigation SDK に付属しています。
NavigationApi.showTermsAndConditionsDialogメソッドを使用して、利用規約を含むダイアログを表示します。 - Google マップ モバイルでサポートされている言語は、Navigation SDK で自動的に使用できます。デバイスにはデフォルトのシステム言語があり、アプリはその設定を変更できません。ただし、アプリは 70 以上の言語にアクセスできます。
-
はい。起動すると、
LocationListenerはバックグラウンドで実行され続けます。アプリは位置を道路にスナップし続け、方位を維持します。 -
はい。ルートが作成または変更されると、
RouteChangeListenerがポリラインを提供します。 - いいえ。Navigation SDK を使用するにあたって、デバイスに Google マップ モバイルをインストールする必要はありません。
- いいえ。現在のところ、Navigation SDK にこの機能はありません。
- はい。トラフィックの方向はデフォルトで表示されます。
- Navigation SDK はどのバージョンの JDK をサポートしていますか?
- Navigation SDK は、Oracle が積極的にサポートしている Java SE の LTS バージョンをサポートしています。これらのバージョンは、Oracle Java SE サポート ロードマップでPremier Supportとして記載されています。
ネットワークと接続
- Navigation SDK は、ネットワーク接続が不安定な場合にどのように対処しますか?
- Navigation SDK は、各ルートの経路を事前にキャッシュします。プリキャッシュされる情報には、15 ~ 20 分間のルート情報と、ユーザーがルートから外れた場合の代替ルートが含まれます。Navigation SDK は、デバイスの GPS とセンサーを使用して位置を推定します。
- Navigation SDK は、GPS 信号が弱い場合や失われた場合、どのように処理しますか?
-
ナビゲーションが開始され、Navigation SDK が GPS 信号を 1 回以上受信すると、次の状況で「GPS を検索しています...」というメッセージが表示されます。
- 最後に GPS 信号を受信してから 10 秒以上経過している場合。
- 最後に GPS 信号を受信してから、ルート設定位置が 500 m 以上移動した場合。
SDK が長時間にわたって GPS 信号を受信しない場合、アプリでシェブロンの位置によって示されるルートの進行状況が遅くなり、最終的に完全に停止することがあります。この場合、地図上のシェブロンは、最後の GPS 信号が示す位置に留まります。SDK は、GPS 信号を受信しなかったことが原因でナビゲーション モードを自動的に終了することはありません。ただし、信号を再度受信するまで、ナビゲーションを提供できない場合があります。
- オフライン モードは利用できますか?
- いいえ。Navigation SDK には、現時点ではオフライン モードはありません。ただし、SDK には、ルートの事前キャッシュ情報が用意されています。
データ
- ルートを開始する前に、ルート内のすべての停車地/目的地を取得できますか?
-
はい。ルートの経路を取得するには、
Navigator.getRouteSegments()を呼び出します。 - ルートの開始時にターンバイターン方式のルート案内を利用できますか?
- はい。Navigation SDK は、ルート セグメントのリストを提供します。また、ユーザーはヘッダーの経路カードをスワイプして、各操作を確認できます。
- 到着予定時刻はアプリユーザーにどのように通知されますか?
-
アプリユーザーに到着予定時刻の情報を提供するには、次の手順を行います。
Navigator.getTimeAndDistanceList()を使用して、すべてのウェイポイントの時間と距離を取得します。- ドライバーの到着予定時刻と同様に、この情報をクライアント アプリケーションに転送します。
-
ナビゲーションがフォアグラウンドにない場合、
RoadSnappedLocationProviderを使用してユーザーの現在のスナップされた位置情報を取得できますか? -
はい。
RoadSnappedLocationProviderはデフォルトでバックグラウンドで実行されます。 - Navigation SDK はジオフェンスに対応していますか?
-
いいえ。ナビゲーションのコンテキストでは、
remainingTimeOrdistanceChangeListenerはジオフェンスよりも優れています。ジオフェンスは道路の形状を考慮していない可能性があり、ユーザーが移動している正確な地点を中心としていない可能性があります。この機能は
remainingTimeOrdistanceChangeListenerを使用して近似できます。- しきい値を設定して、コールバックの頻度を決定します。
- 目的地までの残りの距離を確認します。
たとえば、しきい値を 100 m に設定すると、目的地までの距離が 100 m 変化したときにコールバックを受け取ります。距離が短くなるにつれて、このしきい値をより小さい値に更新して、より頻繁にコールバックを受け取ることができます。次に、残りの距離を調べて、乗車/降車場所に十分近づいているかどうかを判断します。
- ナビゲーション アプリがバックグラウンドで動作しているときに通知を無効にすることはできますか?
-
はい。
Navigator.setHeadsUpNotificationEnabledを使用して通知を制御します。このメソッドにはブール値の引数があります。FALSEは通知を無効にします。TRUEは通知を有効にします。 -
トランザクション レコーダーは、一意の ID を使用して乗車と降車を追跡します。この ID は、プロダクト分析のために Google が記録します。Mobility Services をご利用のお客様は、
NavigationTransactionRecorderを実装してトランザクションの記録をログに記録することをおすすめします。
UI のカスタマイズ
- 最適なルート オプションを色分けできますか?
- いいえ。現時点では、特定のルート オプションを色分けすることはできません。
- Navigation SDK で最終目的地の到着予定時刻を表示できますか?
-
はい。次のメソッドを使用します。
Navigator.getTimeAndDistanceList()を使用して、すべてのウェイポイントの時間と距離を取得します。NavigationFragment.setEtaCardEnabled(false)を使用して、現在のウェイポイントの到着予定時刻を非表示にします。- 最終目的地の到着予定時刻をレンダリングします。
- 到着予定時刻の更新を非表示にするにはどうすればよいですか?
-
到着予定時刻カードを無効にするには、
navigationView.setEtaCardEnabled(false)を呼び出します。 -
StylingOptionsを使用して、背景色のスタイルを設定します。ヘッダーとフッターを非表示または表示するには、NavigationFragmentのsetHeaderEnabledメンバー関数とsetFooterEnabledメンバー関数を使用します。
ルーティング
- ユーザーに特定のルートを提供したり、代替ルートを削除したりできますか?
- いいえ。デフォルトでは、複数のルートが提供され、最速のルートが優先されます。 リクエストに「高速道路や有料道路を避ける」などの設定を追加することで、デフォルトのルートに影響を与えることができます。ウェイポイントを追加すると、ルートにも影響します。
- アプリユーザーに、デフォルトの目的地とは異なるラベルを表示できますか?
-
はい。目的地と緯度/経度のカスタム タイトルを含む
Markerを作成します。Navigation SDK は、NavigationMapにカスタム タイトルと座標を表示します。 - Navigation SDK を使用して、定義された経路からの逸脱を追跡できますか?
-
はい。
Navigator.setRouteChangedListenerを使用して、ルートが変更されたとき、または新しいルートが推奨されたときに通知を受け取ります。Navigator.setRouteChangedListenerメソッドを使用して、ルート上のデバイスの位置を確認するリスナーを登録します。- コールバック イベント ハンドラ
onRouteChangedにコードを追加します。- 更新された到着予定時刻と距離情報をアプリユーザーに送信します。
- デバイスの位置情報を追跡する。
- [省略可] ユーザーが所定のルートから外れた場合の処理に必要なその他の機能をアプリに追加します。
-
はい。
Navigator.stopGuidanceメソッドを呼び出してナビゲーションを停止します。 - Navigation SDK は、トラックや大型車両のルート設定とナビゲーションに対応していますか?
-
はい。大型車両向けルート検索(LVR)を使用すると、Routes API または Route Optimization API によって生成されたトラック固有のルートトークンを Navigation SDK に渡すことができます。この SDK は、ルートのコールアウト(高さ、重量、危険物、トラックの制限)を含むターンバイターン方式のナビゲーションを提供し、動的なルート変更中も車両の物理プロファイルを維持します。詳しくは、大型車両のルートをナビゲートするをご覧ください。
シミュレータ
- シミュレータはルート変更をサポートしていますか?
-
はい。
simulateLocationsAlongNewRouteを呼び出して、ルート変更を含む移動をシミュレートします。simulateLocationsAlongExistingRouteメソッドは、既存のルートに対する変更を無視します。
Workflows
- ナビゲーション フラグメントを含むアクティビティを閉じた後に通知を閉じるにはどうすればよいですか?
-
ナビゲーション通知は、アクティビティが閉じられたとき、ナビゲーション中に表示されたままになります。車両が目的地に到着すると、ナビゲーションが停止し、通知が消えます。
通知のクリックを処理するには、
Navigator.startGuidance(intent resumeIntent)を使用します。resume intentは、アプリユーザーが通知をクリックしたときに呼び出されます。 通常、Navigator.startguidance(getIntent())はメイン Activity から呼び出されます。メイン Activity は、アプリユーザーが通知をタップしたときに Activity を呼び出します。
モビリティ サービス
Google Maps Platform モビリティ サービスは、運輸および物流ビジネスの企業ニーズをサポートする API と SDK のコレクションを提供します。モビリティ サービスのお客様の場合、Navigation SDK は通常、ルートの最適化、配車、タスク トラッカー、フリート分析などの関連サービスと組み合わせて使用されます。また、Navigation SDK の課金方法は、モビリティ サービスのお客様とは異なります。詳細については、モビリティ サービスのドキュメントをご覧ください。
モビリティ プロダクトは現在、一部のお客様のみご利用いただけます。詳しくは、営業担当者にお問い合わせください。
ReportBillableEvent 呼び出しを探してください。ReportBillableEvent メソッドを呼び出すのは、モビリティ サービスのお客様のみです。
Navigation SDK には、モビリティ サービスのお客様のみが使用できる API がいくつかあります。これらの API は、Google からトランザクションごとに課金されます。Mobility Services のお客様でない場合、次のメソッドは何も行いません。
はい。モビリティ サービスのお客様は、モビリティ サービスとモビリティ サービス以外の両方の Navigation SDK の実装を使用できます。ただし、アプリで一度に使用できる実装タイプは 1 つのみです。また、モビリティ サービスの実装で使用するものとは別に、新しい Google Cloud プロジェクト、請求先アカウント、API キーを作成する必要があります。詳細については、Navigation SDK のセットアップの概要をご覧ください。
モビリティ サービス以外の Navigation SDK の実装(ある実装タイプから別の実装タイプへのアプリの移行など)について詳しくは、Google アカウント担当者にお問い合わせください。
注: 現在モビリティ サービスをご利用でないお客様で、モビリティ サービスの API と SDK のコレクションについて詳しく知りたい場合は、Google Maps Platform の営業担当者にお問い合わせください。