よくある質問

プロダクトの詳細

ネットワークと接続

データ

UI のカスタマイズ

ルーティング

シミュレータ

Workflows

モビリティ サービス

プロダクトの詳細

アプリには、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 にオフライン モードはありませんが、移動に関する事前キャッシュ情報が提供されます。

データ

ルートを開始する前に、移動のすべての停車地/目的地を取得できますか?

はい。ルートの経路を取得するには、Navigator.getRouteSegments() を呼び出します。

ルートの開始時にターンバイターン方式のルート案内を利用できますか?
はい。Navigation SDK はルートセグメントのリストを提供します。 また、ユーザーはヘッダーの経路カードをスワイプして、各操作を確認できます。
ETA はアプリのユーザーにどのように通知されますか?

次の手順で、ETA 情報をアプリのユーザーに提供します。

  1. を使用して、すべての経由地の時間と距離を取得します。Navigator.getTimeAndDistanceList()
  2. この情報を、ドライバーの ETA と同様にクライアント アプリケーションに転送します。
ナビゲーションがフォアグラウンドにない場合、RoadSnappedLocationProvider を使用して、ユーザーの現在のスナップされた位置情報を取得できますか?

はい。RoadSnappedLocationProvider は デフォルトでバックグラウンドで実行されます。

Navigation SDK はジオフェンシングをサポートしていますか?

いいえ。ナビゲーションのコンテキストでは、remainingTimeOrdistanceChangeListener の方がジオフェンスよりも優れています。ジオフェンスは 道路の形状を考慮していない可能性があり、ユーザーがナビゲーションしている正確な地点を中心としていない可能性があります。

を使用して、この機能を近似できます。remainingTimeOrdistanceChangeListener

  1. しきい値を設定して、コールバックの頻度を決定します。
  2. 目的地までの残りの距離を確認します。

たとえば、しきい値を 100 m に設定すると、目的地までの距離が 100 m 変化したときにコールバックを受け取ります。距離が短くなるにつれて、このしきい値を小さい 値に更新し、より頻繁にコールバックを受け取ることができます。次に、残りの距離を調べて、乗車/降車地点に十分に近いかどうかを判断します。

ナビゲーション アプリがバックグラウンドにあるときに通知を無効にできますか?

はい。Navigator.setHeadsUpNotificationEnabled を使用して通知を制御します。このメソッドにはブール値の引数があります。FALSE は通知を無効にし、TRUE は通知を有効にします。

トランザクション レコーダーは、一意の ID で乗車と降車を追跡します。この ID は、プロダクト分析の目的で Google によって記録されます。モビリティ サービスをご利用のお客様は、NavigationTransactionRecorder を実装して取引の記録をログに記録することをおすすめします。

UI のカスタマイズ

最適ルート オプションを色分けできますか?
いいえ。現時点では、特定のルート オプションの色分けは対象外です。
Navigation SDK は最終目的地の ETA を表示できますか?

はい。次のメソッドを使用します。

  1. を使用して、すべての経由地の時間と距離を取得します。Navigator.getTimeAndDistanceList()
  2. NavigationFragment.setEtaCardEnabled(false) を使用して、現在の経由地の ETA を非表示にします。
  3. 最終目的地の ETA をレンダリングします。
ETA の更新を非表示にするにはどうすればよいですか?

navigationView.setEtaCardEnabled(false) を呼び出すと、ETA カードを無効にできます。

ヘッダーカードとフッターカードで利用できる UI のカスタマイズは何ですか?

StylingOptions を使用して、背景色のスタイルを設定します。ヘッダーとフッターを非表示または表示するには、NavigationFragmentsetHeaderEnabled メンバー関数と setFooterEnabled メンバー関数を使用します。

ルーティング

特定のルート をユーザーに提供したり、代替ルートを削除したりできますか?
いいえ。デフォルトでは、複数のルートが提供され、最速ルートが優先されます。リクエストに「高速道路と有料道路を避ける」などの設定を追加することで、デフォルトのルートに影響を与えることができます。経由地を追加すると、ルートも変更されます。
デフォルトの 目的地の位置情報とは異なるラベルをアプリのユーザーに表示できますか?

はい。目的地と緯度/経度に対してカスタム タイトルを持つ Marker を作成します。Navigation SDK は、カスタム タイトルと座標を NavigationMap に表示します。

Navigation SDK を使用して、定義されたパスからの逸脱を追跡できますか?

はい。Navigator.setRouteChangedListener を使用すると、ルートが変更されたときや新しいルートが推奨されたときに通知を受け取ることができます。

  1. `Navigator.setRouteChangedListener` メソッドを使用して、ルートに沿ったデバイスの位置を確認するリスナーを登録します。
  2. コールバック イベント ハンドラ onRouteChanged にコードを追加します。
    • 更新された ETA と距離の情報を含むメッセージをアプリのユーザーに送信します。
    • デバイスの位置情報を追跡します。
    • [省略可] ユーザーが規定のルートから外れた場合に処理するために、アプリに必要なその他の機能を追加します。
ユーザーはルートを完了せずにナビゲーションを終了できますか?

はい。Navigator.stopGuidance() メソッドを呼び出して ナビゲーションを停止します。

シミュレータ

シミュレータはルートの変更をサポートしていますか?

はい。simulateLocationsAlongNewRoute を呼び出して、ルートの変更を含む移動をシミュレートします。The simulateLocationsAlongExistingRoute メソッドは、既存のルートの変更を無視します。

Workflows

ナビゲーション フラグメントを含むアクティビティを閉じた後、通知を閉じるにはどうすればよいですか?

ナビゲーション通知は、ナビゲーション中、アクティビティが閉じている間も表示されたままになります。車両が目的地に到着すると、ナビゲーションが停止し、通知が消えます。

通知のクリックを処理するには、Navigator.startGuidance(intent resumeIntent) を使用します。 アプリのユーザーが通知をクリックすると、resume intent が発生します。 通常、Navigator.startguidance(getIntent()) は メイン アクティビティから呼び出されます。これにより、アプリのユーザーが通知をクリックするとアクティビティが呼び出されます。

モビリティ サービス

モビリティ サービスをご利用のお客様の場合、Navigation SDK の使用方法はどのように異なりますか?

Google Maps Platform モビリティ サービスは、運輸および物流ビジネスの企業のニーズをサポートする API と SDK のコレクションを提供します。モビリティ サービスをご利用のお客様の場合、Navigation SDK は通常、ルートの最適化、ディスパッチ、タスクの追跡、フリート分析などの関連サービスと組み合わせて使用されます。Navigation SDK の課金方法も、モビリティ サービスをご利用のお客様とそれ以外のお客様で異なります。詳細については、モビリティ サービスのドキュメントをご覧ください。

モビリティ プロダクトは現在、一部のお客様のみご利用いただけます。詳細については、営業担当者にお問い合わせください。

モビリティ サービスをご利用のお客様かどうかを確認するにはどうすればよいですか?
現在、Navigation SDK をモビリティ サービスをご利用のお客様として実装しているかどうか不明な場合は、コードで ReportBillableEvent 呼び出しを探してください。ReportBillableEvent メソッドを呼び出す必要があるのは、モビリティ サービスをご利用のお客様のみです。

モビリティ サービスをご利用のお客様に対する Navigation SDK の課金方法を教えてください。
モビリティ サービスをご利用のお客様の場合、Navigation SDK の課金と料金は、Google Maps Platform とのサービス契約によって異なります。モビリティ サービスの実装が正しく課金されていることを確認する方法については、課金の検証をご覧ください。モビリティ サービスの課金について詳しくは、営業担当者にお問い合わせください。

モビリティ サービスをご利用のお客様のみが使用すべき Navigation SDK API はどれですか?

Navigation SDK には、モビリティ サービスをご利用のお客様のみが使用することを目的とした API がいくつかあります。これらの API は、取引ごとに Google から課金されます。モビリティ サービスをご利用でないお客様の場合、次のメソッドは no-op です。

モビリティ サービスをご利用のお客様の場合、モビリティ サービス以外の Navigation SDK の実装も使用できますか?

はい。モビリティ サービスをご利用のお客様は、Navigation SDK のモビリティ サービスの実装とモビリティ サービス以外の実装の両方を使用できます。ただし、アプリで一度に使用できる実装タイプは 1 つだけです。また、モビリティ サービスの実装で使用するものとは別に、新しい Google Cloud プロジェクト、請求先アカウント、API キーを作成する必要があります。詳細については、Navigation SDK の設定の概要をご覧ください。

モビリティ サービス以外の Navigation SDK の実装の使用方法(アプリをある実装タイプから別の実装タイプに移行する方法など)について詳しくは、Google アカウント担当者にお問い合わせください。

注: 現在モビリティ サービスをご利用でないお客様で、モビリティ サービスの API と SDK のコレクションについて詳しくは、Google Maps Platform の営業担当者にお問い合わせください