ナビゲーター

公開インターフェース Navigator

ナビゲーションを制御するためのメソッドを提供するシングルトン。

UI スレッドで呼び出す必要がある setAudioGuidance と setHeadsUpNotificationEnabled を除いて、すべてのメソッドがスレッドセーフであることが保証されています。

ネストクラスの概要

インターフェース Navigator.ArrivalListener ドライバーが地点に到着したときに呼び出されるメソッドのシグネチャを定義します。
@インターフェース Navigator.AudioGuidance AudioGuidance は、ナビゲーション中に使用する音声アラートとガイダンスの種類を指定するフラグのセットです。
インターフェース Navigator.RemainingTimeOrDistanceChangedListener 次のデスティネーションまでの残りの時間または距離が変更されたときに呼び出されるメソッドのシグネチャを定義します。
インターフェース Navigator.RouteChangedListener ルートが変更されたときに呼び出されるメソッドのシグネチャを定義します。
enum Navigator.RouteStatus RouteStatus はルート計算の結果を表すステータス コードで、setDestination(Waypoint) から返された Future を介してアクセスされます。 

パブリック メソッドの概要

抽象派 void
cleanup()
Navigator の内部状態をクリーンアップします。
抽象派 void
clearDestinations()
以前に設定したすべての目的地を消去し、計算したルートを地図から削除します。
抽象派 void
clearLicensePlateRestrictionInfo()
現在の運転手のナンバー プレート情報を消去します。
抽象派 void
clearRemainingTimeOrDistanceChangedListener()
残り時間または距離の変化についてリスナーをクリアします。
抽象派 ウェイポイント
continueToNextDestination()
現在のデスティネーションを削除します。
抽象 ListenableResultFuture<RouteInfo>
fetchRouteInfoWaypoint 地点、RoutingOptions routingOptions)
RoutingOptions.RoutingStrategy の各値に基づいてルートのルート情報を返します。
抽象 RouteSegment
getCurrentRouteSegment()
ジャーニーの現在の区間を返します。
抽象 TimeAndDistance
getCurrentTimeAndDistance()
現在地から現在の目的地までの推定時間と距離を返します。
抽象 List<RouteSegment>
getRouteSegments()
ルート セグメントのリストを返します。
抽象派 シミュレータ
getSimulator()
テストで使用する Simulator オブジェクトを返します。
抽象 List<TimeAndDistance>
getTimeAndDistanceList()
現在の経路内の各目的地に対応する時間と距離のリストを返します。これは、現在地から各目的地までの推定時間と距離を表します。
抽象 List<LatLng>
getTraveledRoute()
startGuidance() への前回の呼び出し以降に)このガイダンス セッション中に移動したルートを返します。
抽象 ブール値
isGuidanceRunning()
ガイダンスが現在実行中の場合は、true を返します。
抽象派 void
setArrivalListenerNavigator.ArrivalListener リスナー)
到着イベントのリスナーを登録します。
抽象派 void
setAudioGuidance(int ガイダンス)
音声ガイダンス(バイブレーションを含む)を有効にするタイプを設定します。
抽象 ListenableResultFuture<Navigator.RouteStatus>
setDestinationWaypoint デスティネーション、RoutingOptions routingOptions、DisplayOptions displayOptions)
ナビゲーションに単一のデスティネーションを設定します。以前に設定したデスティネーションをオーバーライドします。
抽象 ListenableResultFuture<Navigator.RouteStatus>
setDestinationWaypoint の宛先、RoutingOptions オプション)
ナビゲーションに単一のデスティネーションを設定します。以前に設定したデスティネーションをオーバーライドします。
抽象 ListenableResultFuture<Navigator.RouteStatus>
setDestinationWaypoint の目的地)
ナビゲーションに単一のデスティネーションを設定します。以前に設定したデスティネーションをオーバーライドします。
抽象 ListenableResultFuture<Navigator.RouteStatus>
setDestinations(List<Waypoint> の宛先、RoutingOptions オプション)
ナビゲーションに複数のデスティネーションを設定し、以前に設定したデスティネーションをオーバーライドします。
抽象 ListenableResultFuture<Navigator.RouteStatus>
setDestinations(List<Waypoint> デスティネーション、RoutingOptions routingOptions、DisplayOptions displayOptions)
ナビゲーションに複数のデスティネーションを設定し、以前に設定したデスティネーションをオーバーライドします。
抽象 ListenableResultFuture<Navigator.RouteStatus>
setDestinations(List<Waypoint> のデスティネーション)
ナビゲーションに複数のデスティネーションを設定し、以前に設定したデスティネーションをオーバーライドします。
抽象派 void
setHeadsUpNotificationEnabled(ブール値が有効)
ヘッドアップ通知を表示するかどうかを設定します。
抽象派 void
setLicensePlateRestrictionInfo(int rawLicensePlateLastDigit, StringlicensePlateCountryCode)
現在の運転手のナンバー プレート情報を設定します。
抽象派 void
setRemainingTimeOrDistanceChangedListener(int timeChangeThresholdSeconds、intDistanceChangeThresholdMeters、Navigator.RemainingTimeOrDistanceChangedListener リスナー)
目的地までの残りの時間または距離が、指定したしきい値を超えて変化した場合にリスナーを登録します。
抽象派 void
setRouteChangedListenerNavigator.RouteChangedListener リスナー)
ルート変更イベントのリスナーを登録します。
抽象派 void
setSpeedingListenerSpeedingListener speedingListener)
ドライバーが現在運転している速度制限を超える割合の SpeedingListener を登録します。
抽象派 void
startGuidance(インテント ResumeIntent)
startGuidance() と同じですが、ナビゲータのステータスバー通知からアプリを再開するために使用できるインテントを指定します。
抽象派 void
startGuidance()
目的地が設定されていて、そのルートが計算されている場合は、そのルートのターンバイターン方式のナビ案内を開始します。
抽象派 void
stopGuidance()
ターンバイターン方式のナビ案内を停止します。

パブリック メソッド

public ()

Navigator の内部状態をクリーンアップします。

注: このメソッドを呼び出すと、setDestinations(List) に対する保留中のリクエストがすべてキャンセルされます。

public act void clearDestinations ()

以前に設定したすべての目的地を消去し、計算したルートを地図から削除します。ナビゲーションが実行中の場合は、自動的に停止します。

public act void clearLicensePlateRestrictionInfo ()

現在の運転手のナンバー プレート情報を消去します。これは、この値が設定された後に行われる setDestination 呼び出しにのみ適用されます。

public 抽象 void clearRemainingTimeOrDistanceChangedListener ()

残り時間または距離の変化についてリスナーをクリアします。

public 抽象 Waypoint continueToNextDestination ()

現在のデスティネーションを削除します。この呼び出しの後、次の目的地に向かって案内が行われますが、以前の目的地に関する情報は入手できません。

戻り値
  • 地点の案内は現在進行方向になっています。地点が残っていない場合は null です。

public ListenableResultFutureRouteInfo fetchRouteInfoRoutingOptions

RoutingOptions.RoutingStrategy の各値に基づいてルートのルート情報を返します。このメソッドはすべてのルーティング方法のルート情報を返すため、RoutingOptions.RoutingStrategy は無視されます。

注: これは呼び出しごとに再計算されます。また、その間に交通状況などの要因が更新されている可能性があるため、ナビゲーションで現在使用されているルートと一致しない場合があります。

パラメータ
ウェイポイント ルートの目的地の地点
routingOptions ルート情報の取得に使用するオプション
戻り値
  • 返された Future

public attribute RouteSegment getCurrentRouteSegment ()

ジャーニーの現在の区間を返します。この RouteSegment は、デバイスの最新の既知の(道路にスナップされた)位置が開始位置になります。

戻り値
  • ルート セグメント オブジェクト。現在のルートがない場合は null

public 抽象 TimeAndDistance getCurrentTimeAndDistance ()

現在地から現在の目的地までの推定時間と距離を返します。

戻り値
  • 時間と距離オブジェクト。現在のルートがない場合は null

public specific List<RouteSegment> getRouteSegments ()

ルート セグメントのリストを返します。返される各セグメントのデスティネーションは、setDestination(s) によって設定されたデスティネーションに対応します。

public 抽象 シミュレータ getSimulator ()

テストで使用する Simulator オブジェクトを返します。

public 抽象 List<TimeAndDistance> getTimeAndDistanceList ()

現在の経路内の各目的地に対応する時間と距離のリストを返します。これは、現在地から各目的地までの推定時間と距離を表します。

public attribute List<LatLng> getTraveledRoute ()

startGuidance() への最後の呼び出し以降の)この案内セッション中に、これまでに移動したルートを返します。記録されたルートは、RoadSnappedLocationProvider によって返される道路を切り詰めた場所から構成され、冗長な地点(連続した同じ直線上のポイントを 1 つの線分に変換するなど)を削除するために簡素化されています。

public act boolean isGuidanceRunning ()

ガイダンスが現在実行中の場合は、true を返します。ガイダンスは、目的地へのルートが計算され、startGuidance() が呼び出された場合にのみ実行されます。

public act void setArrivalListener Navigator.ArrivalListener リスナー)

到着イベントのリスナーを登録します。以前に登録されたリスナーをオーバーライドします。

注: メモリリークを回避するため、リスナーが不要になったら setNavArrivalListener(null) を呼び出す必要があります。

パラメータ
リスナー 呼び出す必要があります。null に設定すると、以前に登録されたリスナーを消去できます。

public setAudioGuidance

音声ガイダンス(バイブレーションを含む)を有効にするタイプを設定します。デフォルトでは、バイブレーション、音声、Voice over Bluetooth(使用可能な場合)が有効になっています。

このメソッドは UI スレッドで呼び出す必要があります。

パラメータ
ガイダンス 有効にする音声ガイダンスの種類を指定する Navigator.AudioGuidance フラグの組み合わせ

public ListenableResultFutureNavigator.RouteStatus setDestinationRoutingOptionsDisplayOptions

ナビゲーションに単一のデスティネーションを設定します。以前に設定したデスティネーションをオーバーライドします。ユーザーの現在地から指定された目的地へのルートが見つかった場合、返される Future は OK に設定されます。

パラメータ
destination 設定します。
routingOptions ルートの生成に使用されるオプション
displayOptions 経路の表示に使用するオプション
戻り値
  • 返された Future
例外
NullPointerException 指定されたデスティネーションが null の場合

public ListenableResultFutureNavigator.RouteStatus setDestinationRoutingOptions

ナビゲーションに単一のデスティネーションを設定します。以前に設定したデスティネーションをオーバーライドします。ユーザーの現在地から指定された目的地へのルートが見つかった場合、返される Future は OK に設定されます。ルートの表示にはデフォルトの DisplayOptions が使用されます。

パラメータ
destination 設定します。
オプション ルートの生成に使用されるオプション
戻り値
  • 返された Future
例外
NullPointerException 指定されたデスティネーションが null の場合

public 抽象 ListenableResultFuture<Navigator.RouteStatus> setDestination Waypoint の宛先)

ナビゲーションに単一のデスティネーションを設定します。以前に設定したデスティネーションをオーバーライドします。ユーザーの現在地から指定された目的地へのルートが見つかった場合、返される Future は OK に設定されます。ルートの検索にはデフォルトの RoutingOptions が使用され、表示にはデフォルトの DisplayOptions が使用されます。

パラメータ
destination 設定します。
戻り値
  • 返された Future
例外
NullPointerException 指定されたデスティネーションが null の場合

ListenableResultFutureNavigator.RouteStatus setDestinationsRoutingOptions

ナビゲーションに複数のデスティネーションを設定し、以前に設定したデスティネーションをオーバーライドします。ユーザーの現在地から指定された目的地へのルートが見つかった場合、返される Future は OK に設定されます。ルートの表示にはデフォルトの DisplayOptions が使用されます。

パラメータ
宛先 新しい宛先リストを設定します
オプション ルートの生成に使用されるオプション
戻り値
  • 返された Future

public ListenableResultFutureNavigator.RouteStatus setDestinationsRoutingOptionsDisplayOptions

ナビゲーションに複数のデスティネーションを設定し、以前に設定したデスティネーションをオーバーライドします。ユーザーの現在地から指定された目的地へのルートが見つかった場合、返される Future は OK に設定されます。

パラメータ
宛先 新しい宛先リストを設定します
routingOptions ルートの生成に使用されるオプション
displayOptions 経路の表示に使用するオプション
戻り値
  • 返された Future

ListenableResultFutureNavigator.RouteStatus setDestinations

ナビゲーションに複数のデスティネーションを設定し、以前に設定したデスティネーションをオーバーライドします。ユーザーの現在地から指定された目的地へのルートが見つかった場合、返される Future は OK に設定されます。ルートの検索にはデフォルトの RoutingOptions が使用され、表示にはデフォルトの DisplayOptions が使用されます。

パラメータ
宛先 新しい宛先リストを設定します
戻り値
  • 返された Future

public 抽象 void setHeadsUpNotificationEnabled (boolean enabled)

ヘッドアップ通知を表示するかどうかを設定します。デフォルトでは、通知は有効になっています。ヘッドアップ イベントとは、曲がり角などのガイダンス イベントで、地図が表示されていないときに表示されます。

このメソッドは UI スレッドで呼び出す必要があります。

パラメータ
有効 ヘッドアップ通知を有効にするかどうかを示すフラグ

public (int rawLicensePlateLastDigit, String licensePlateCountryCode) setLicensePlateRestrictionInfo

現在の運転手のナンバー プレート情報を設定します。これにより、ナンバー プレート番号に基づく特定の種類の道路制限を回避することができます。これは、この値が設定された後に行われる setDestination 呼び出しにのみ適用されます。ナビゲータを取得した直後に呼び出すのが理想的です。

パラメータ
rawLicensePlateLastDigit ナンバー プレートの最後の桁(0 ~ 9 の範囲)
licensePlateCountryCode 現在、Google はインドネシア(ID)とブラジル(BZ)をサポートしています。今後、その他の国もサポートされる可能性があります。この情報を積極的に提供してください。

setRemainingTimeOrDistanceChangedListenerNavigator.RemainingTimeOrDistanceChangedListener

目的地までの残りの時間または距離が、指定したしきい値を超えて変化した場合にリスナーを登録します。以前に登録されたリスナーをオーバーライドします。

リスナーは、ユーザーの移動、交通状況の変化、ルートの変更、目的地の変更、または残りの時間と距離が最初に判明したときなどに呼び出されることがあります。

注: メモリリークを回避するため、リスナーが不要になったら clearNavProgressionListener() を呼び出す必要があります。

パラメータ
timeChangeThresholdSeconds 残り時間(秒単位)の絶対変化がこの値以上である場合、リスナーが呼び出されます。このしきい値を負の値にすることはできません。
distanceChangeThresholdMeters 残りの距離の絶対的な変化(メートル単位)がこの値以上である場合、リスナーが呼び出されます。このしきい値を負の値にすることはできません。
リスナー 呼び出す必要があります。null は使用できません。

public act void setRouteChangedListener Navigator.RouteChangedListener リスナー)

ルート変更イベントのリスナーを登録します。以前に登録されたリスナーをオーバーライドします。

注: メモリリークを回避するため、リスナーが不要になったら setNavRouteChangeListener(null) を呼び出す必要があります。

パラメータ
リスナー 呼び出す必要があります。null に設定すると、以前に登録されたリスナーを消去できます。

public act void setSpeedingListener SpeedingListener speedingListener)

ドライバーが現在運転している速度制限を超える割合の SpeedingListener を登録します。

null SpeedingListener を設定するか何も設定しなければ、フィードデータの速度低下は発生しません。

パラメータ
speedingListener

public startGuidance

startGuidance() と同じですが、ナビゲータのステータスバー通知からアプリを再開するために使用できるインテントを指定します。このインテントがなければ、ステータスバーからアプリを再開することはできません。

パラメータ
resumeIntent アプリを再開するためのインテントです。ほとんどの場合、android.app.Activity#getIntent() から返される値は適切な値になります。

public act void startGuidance ()

目的地が設定されていて、そのルートが計算されている場合は、そのルートのターンバイターン方式のナビ案内を開始します。ルートがまだ計算されていない場合は、計算が完了するとターンバイターン方式の案内が開始されます。

ナビゲーション サービスを停止するには、明示的に stopGuidance() を呼び出す必要があります。到着しても、ナビゲーション サービスは自動的に停止しません。到着時にナビゲーション サービスを停止するには、NavArrivalListener の stopGuidance() を呼び出す必要があります。

注: このメソッドは Camera の位置を変更しません。

public stopGuidance()

ターンバイターン方式のナビ案内を停止します。