よくある質問
プロダクトの詳細
- 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 を使用して、定義されたパスからの逸脱を追跡できますか?
- ユーザーはルートを完了せずにナビゲーションを終了できますか?
シミュレータ
Workflows
モビリティ サービス
- モビリティ サービスのお客様が Navigation SDK を使用する場合、どのような違いがありますか?
- モビリティ サービスのお客様かどうかを確認するにはどうすればよいですか?
- モビリティ サービスのお客様に対する 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 サポート ロードマップでプレミア サポートの対象として記載されています。
ネットワークと接続
- 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 信号で示された場所に留まります。GPS 信号を受信しなかった場合でも、SDK は自動的にナビゲーション モードを終了しません。ただし、信号を再び受信するまで、ガイダンスを提供できない場合があります。
- オフライン モードは利用できますか?
- いいえ。Navigation SDK は現時点ではオフライン モードを提供していませんが、SDK はルートの事前キャッシュ保存情報を提供しています。
データ
- ルートを開始する前に、ルート内のすべての経由地/目的地を取得できますか?
-
はい。ルートの経路を取得するには、
Navigator.getRouteSegments()
を呼び出します。 - ルートの開始時にターンバイターン方式のルート案内を利用できますか?
- はい。Navigation SDK は、ルート セグメントのリストを提供します。また、ヘッダーのルート案内カードをスワイプして、各操作を確認することもできます。
- アプリユーザーに ETA はどのように伝えられますか?
-
アプリユーザーに到着予定時刻を伝える手順は次のとおりです。
Navigator.getTimeAndDistanceList()
を使用して、すべての経由地の時間と距離を取得します。- ドライバーの到着予定時刻と同様に、この情報をクライアント アプリケーションに転送します。
-
ナビゲーションがフォアグラウンドにない場合、
RoadSnappedLocationProvider
を使用してユーザーの現在のスナップされた位置情報を取得できますか? -
はい。
RoadSnappedLocationProvider
はデフォルトでバックグラウンドで実行されます。 - Navigation SDK はジオフェンシングをサポートしていますか?
-
いいえ。ナビゲーションのコンテキストでは、
remainingTimeOrdistanceChangeListener
はジオフェンスよりも優れています。ジオフェンスは道路の形状を考慮していない可能性があり、ユーザーがナビゲーションしている正確な地点を中心としていない可能性があります。この機能は
remainingTimeOrdistanceChangeListener
を使用して近似できます。- コールバックの頻度を決定するしきい値を設定します。
- 目的地までの残りの距離を確認します。
たとえば、しきい値を 100 m に設定すると、目的地までの距離が 100 m 変化したときにコールバックを受け取ります。距離が短くなったら、このしきい値を小さい値に更新して、コールバックの頻度を上げることができます。次に、残りの距離を確認して、乗車/降車場所に十分近いかどうかを判断します。
- ナビゲーション アプリがバックグラウンドで動作しているときに通知を無効にできますか?
-
はい。
Navigator.setHeadsUpNotificationEnabled
を使用して通知を制御します。このメソッドにはブール値の引数があります。FALSE
は通知を無効にし、TRUE
は通知を有効にします。 -
トランザクション レコーダーは、固有 ID を使用して集荷と配達を追跡します。この ID は、Google がプロダクト分析の目的でログに記録します。モビリティ サービスをご利用のお客様は、トランザクションの記録をログに記録するために
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()
メソッドを呼び出して、ナビゲーションを停止します。
シミュレータ
- シミュレータはルートの変更をサポートしていますか?
-
はい。
simulateLocationsAlongNewRoute
を呼び出して、ルート変更を含むジャーニーをシミュレートします。simulateLocationsAlongExistingRoute
メソッドは、既存のルートに対する変更を無視します。
Workflows
- ナビゲーション フラグメントを含むアクティビティを閉じた後で通知を閉じるにはどうすればよいですか?
-
アクティビティが閉じている場合でも、ナビゲーション中はナビゲーション通知が表示されたままになります。車両が目的地に到着すると、ナビゲーションが停止し、通知は表示されなくなります。
通知のクリックを処理するには、
Navigator.startGuidance(intent resumeIntent)
を使用します。アプリユーザーが通知をクリックすると、resume intent
が起動します。通常、Navigator.startguidance(getIntent())
はメイン アクティビティから呼び出され、アプリユーザーが通知をクリックするとアクティビティを呼び出します。
モビリティ サービス
Google Maps Platform モビリティ サービスは、運輸業や物流業の企業のニーズに対応する API と SDK のコレクションです。モビリティ サービスのお客様の場合、Navigation SDK は通常、ルートの最適化、配送、タスクの追跡、フリート分析などの関連サービスと組み合わせて使用されます。Navigation SDK の料金は、モビリティ サービスのお客様に対しては別の方法で請求されます。詳細については、モビリティ サービスのドキュメントをご覧ください。
モビリティ プロダクトは現在、一部のお客様のみご利用いただけます。詳しくは、営業担当者にお問い合わせください。
ReportBillableEvent
呼び出しを探してください。ReportBillableEvent
メソッドを呼び出すのは、モビリティ サービスのお客様のみです。
Navigation SDK には、モビリティ サービスのお客様のみが使用することを想定した API がいくつかあります。これらの API を使用すると、Google から取引ごとに請求されます。モビリティ サービスのお客様でない場合、次のメソッドは no-op です。
はい。モビリティ サービスのお客様は、Navigation SDK のモビリティ サービス実装と非モビリティ サービス実装の両方を使用できます。ただし、アプリで一度に使用できる実装タイプは 1 つのみです。また、モビリティ サービスの実装で使用しているものとは別に、新しい Google Cloud プロジェクト、請求先アカウント、API キーを作成する必要があります。詳しくは、Navigation SDK のセットアップの概要をご覧ください。
Navigation SDK の Mobility Services 以外の実装の使用(アプリの実装タイプ間の移行など)について詳しくは、Google アカウントの担当者にお問い合わせください。
注: 現在モビリティ サービスのユーザーではなく、API と SDK のモビリティ サービス コレクションの詳細についてご希望の場合は、Google Maps Platform の営業担当者にお問い合わせください。