よくある質問
プロダクトの詳細
- Navigation SDK 利用規約の通知はどのように表示する必要がありますか?
- 音声ガイダンスはどの言語に対応していますか?
- ユーザーがナビゲーション モードを終了したときに、方位は維持されますか?
- ルートの開始時や変更時にポリラインを使用できますか?
- アプリのユーザーは Google マップ モバイルをインストールする必要がありますか?
- Navigation SDK は、レストランなどの目的地の近くにある駐車場を特定できますか?
- Navigation SDK は、曲がり角に近づくと車線の交通方向を表示しますか?
- Navigation SDK はどのバージョンの JDK をサポートしていますか?
ネットワークと接続
- Navigation SDK はネットワーク接続が不安定な場合どのように処理しますか?
- Navigation SDK は、GPS 信号が弱い場合や GPS 信号が受信できない場合、どのように処理しますか?
- オフライン モードはありますか?
データ
- ルートを開始する前に、ルートのすべての停留所/目的地を取得できますか?
- ルートの開始時にターンバイターン ルート案内を利用できますか?
- 到着予定時刻(ETA)はアプリユーザーにどのように通知されますか?
- ナビゲーションがフォアグラウンドにない場合、
RoadSnappedLocationProvider
を使用してユーザーの現在地を取得できますか? - Navigation SDK はジオフェンスをサポートしていますか?
- ナビゲーション アプリがバックグラウンドで動作しているときに通知を無効にできますか?
- Google が保持している取引のログを確認するにはどうすればよいですか?
UI のカスタマイズ
- 最適なルート オプションに色分けできますか?
- Navigation SDK で最終目的地の到着予定時刻を表示できますか?
- 予定時刻の更新を非表示にするにはどうすればよいですか?
- ヘッダー カードとフッター カードで利用できる UI のカスタマイズにはどのようなものがありますか?
ルーティング
- ユーザーに特定のルートを指定したり、代替ルートを削除したりすることはできますか?
- デフォルトの宛先とは異なる宛先ラベルをユーザーに表示できますか?
- Navigation SDK を使用して、定義されたパスからの逸脱をトラッキングできますか?
- ユーザーはルートを完了せずにナビゲーションを終了できますか?
シミュレータ
Workflows
モビリティ サービス
- Mobility Services をご利用の場合、Navigation SDK の使用方法はどのように異なりますか?
- 自分が Mobility Services のお客様かどうかを確認するにはどうすればよいですか?
- Mobility Services をご利用のお客様は Navigation SDK をどのようにお支払いですか?
- モビリティ サービスのお客様のみが使用できる Navigation SDK API はどれですか?
- Mobility Services をご利用の場合、Mobility Services 以外の実装の Navigation SDK も使用できますか?
プロダクトの詳細
-
アプリには、各ユーザーが同意する必要がある Navigation SDK 利用規約に関する通知を含むダイアログを実装する必要があります。このダイアログでは、ユーザーが利用規約に同意できます。利用規約のテキスト ファイルは Navigation SDK に付属しています。
NavigationApi.showTermsAndConditionsDialog
メソッドを使用して、利用規約を含むダイアログを表示します。 - Google Maps Mobile でサポートされている言語はすべて、Navigation SDK で自動的に使用できます。デバイスにはデフォルトのシステム言語があり、アプリはその設定を変更できませんが、アプリは 70 を超える言語にアクセスできます。
-
はい。開始すると、
LocationListener
はバックグラウンドで実行され続けます。アプリは道路に沿って位置をスナップし、方位を維持します。 -
はい。ルートが作成または変更されると、
RouteChangeListener
がポリラインを提供します。 - いいえ。Navigation SDK では、デバイスに Google Maps Mobile をインストールする必要はありません。
- いいえ。現在のところ、Navigation SDK ではこの機能は提供されていません。
- はい。デフォルトでは、交通方向が使用可能で表示されます。
- Navigation SDK はどのバージョンの JDK をサポートしていますか?
- Navigation SDK は、Oracle によって積極的にサポートされている LTS バージョンの Java SE をサポートしています。これらのバージョンは、Oracle Java SE サポート ロードマップでプレミア サポート対象として記載されています。
ネットワークと接続
- Navigation SDK は、ネットワーク接続が不安定な場合どのように処理しますか?
- Navigation SDK は、各ルートのルートを事前にキャッシュに保存します。事前にキャッシュに保存された情報には、15 ~ 20 分間のルーティング情報と、ユーザーがルートから外れた場合に備えた代替ルート情報が含まれます。Navigation SDK は、デバイスの GPS とセンサーを使用して位置情報を近似します。
- Navigation SDK は、GPS 信号が弱い場合や GPS 信号が受信できない場合をどのように処理しますか?
-
ナビゲーションを開始し、Navigation SDK が GPS 信号を 1 回以上受信すると、次の状況で [GPS を検索しています...] メッセージが表示されます。
- 最後に GPS 信号を受信してから 10 秒以上経過している場合。
- 最後に GPS 信号を受信してからルーティング位置が 500 m 以上移動した場合。
SDK が GPS 信号を長時間受信しない場合、アプリでチェーンの位置で示されるルートの進行状況が遅くなり、完全に停止することがあります。この場合、地図上の矢印は、最後の GPS 信号で示された位置に留まります。GPS 信号を受信しなかったために、SDK がナビゲーション モードを自動的に終了することはありません。ただし、再度シグナルを受信するまでガイダンスを提供できない場合があります。
- オフライン モードはありますか?
- いいえ。現時点では、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()
メソッドを呼び出してナビゲーションを停止します。
シミュレータ
- シミュレーターはルートの変更をサポートしていますか?
-
はい。
simulateLocationsAlongNewRoute
を呼び出して、ルート変更を含むルートをシミュレートします。simulateLocationsAlongExistingRoute
メソッドは、既存のルートに対する変更を無視します。
Workflows
- ナビゲーション フラグメントを含むアクティビティを閉じた後に通知を閉じるにはどうすればよいですか?
-
ナビゲーション通知は、ナビゲーション中、アクティビティが閉じているときに表示されたままになります。車両が目的地に到着すると、ナビゲーションが停止し、通知は消えます。
通知のクリックを処理するには、
Navigator.startGuidance(intent resumeIntent)
を使用します。resume intent
は、アプリのユーザーが通知をクリックしたときに呼び出されます。通常、Navigator.startguidance(getIntent())
はメインのアクティビティから呼び出されます。このアクティビティは、アプリのユーザーが通知をクリックしたときにアクティビティを再呼び出します。
モビリティ サービス
Google Maps Platform モビリティ サービスは、交通機関や物流企業の企業ニーズをサポートする API と SDK のコレクションを提供します。Mobility Services をご利用の場合、Navigation SDK は通常、ルート最適化、配車、タスク トラッキング、フリート分析などの関連サービスと組み合わせて使用されます。また、Mobility Services をご利用のお客様の場合、Navigation SDK の課金方法も異なります。詳細については、Mobility Services のドキュメントをご覧ください。
モビリティ サービスは現在、一部のお客様のみご利用いただけます。詳しくは、営業担当者にお問い合わせください。
ReportBillableEvent
呼び出しを探してください。ReportBillableEvent
メソッドを呼び出すのは、Mobility Services をご利用のお客様のみです。
Navigation SDK には、モビリティ サービスのお客様のみが使用できる API がいくつかあります。これらのお客様には、Google からトランザクションごとに請求されます。Mobility Services をご利用でない場合は、次の方法は使用できません。
はい。モビリティ サービスのお客様は、モビリティ サービスとモビリティ サービス以外の実装の両方で Navigation SDK を使用できます。ただし、アプリで一度に使用できる実装タイプは 1 つのみです。また、Mobility Services の実装で使用するものとは別に、新しい Google Cloud プロジェクト、請求先アカウント、API キーを作成する必要があります。詳細については、Navigation SDK のセットアップの概要をご覧ください。
アプリを 1 つの実装タイプから別の実装タイプに移行する方法など、Navigation SDK の Mobility Services 以外の実装の使用について詳しくは、Google アカウント担当者にお問い合わせください。
注: 現在 Mobility Services をご利用でないお客様で、Mobility Services の API と SDK のコレクションについて詳しくお知りになりたい場合は、Google Maps Platform の営業担当者にお問い合わせください。