デフォルトでは、Android 向け Navigation SDK は、ウェイポイントまでの最短ルートを検索します。ただし、車両がユーザーが待機している道路の側面に到着することや、到着地がドライバーが停車するのに安全であることが保証されるわけではありません。このガイドでは、このような状況で使用できる 2 つの機能について説明します。
- 道路の側面のルーティング設定
- 途中下車機能
ルートのルーティング設定の側面
この機能を使用すると、車両が道路の正しい側に到着するようにすることができます。道路の特定の側に到着するように設定するには、その停留所のウェイポイントを作成するときに設定します。優先度は、道路の同じ側を優先するか、到着地の向きを指定するかのいずれかの方法で指定できます。
道路の同じ側を優先する
ウェイポイントの地理座標を指定し、ウェイポイントと同じ側の道路(最も近い歩道にスナップ)に到着することを示すフラグ(setPreferSameSideOfRoad
)を設定します。
Waypoint waypoint =
Waypoint.builder()
.setLatLng(latitude, longitude)
.setTitle("Somewhere in Sydney")
.setPreferSameSideOfRoad(true)
.build()
到着の向きを設定する
ウェイポイントの地理座標を指定し、待機中のユーザーと同じ側の道路の交通の流れと一致する到着の向き(setPreferredHeading
)を指定します。
Waypoint waypoint =
Waypoint.builder()
.setLatLng(latitude, longitude)
.setTitle("Somewhere in Sydney")
.setPreferredHeading(preferredHeading)
.build()
Navigation SDK は、地点に最も近い道路セグメントを選択します。このセグメントの車線の向きは、地点が存在する道路の側面と(±55 度以内に)一致している必要があります。
途中下車の設定
ドライバーが安全に停車できない場所(高架、フェリー、地下、アクセスが制限されている場所など)では、[途中停車] 機能は、車両が停車するのに適した場所でない場合は、近くの場所にウェイポイントを再配置します。setVehicleStopover
を true
に設定すると、代替の場所が利用可能な場合、ルートの計算時に地点が自動的に再配置されます。
仕組み
経由地の設定は、その経由地のウェイポイントを作成するときに行います。これを行うには、次の例に示すように setVehicleStopover
設定を指定します。
Waypoint waypoint =
Waypoint.builder()
.setLatLng(latitude, longitude)
.setTitle("Somewhere in Sydney")
.setVehicleStopover(true)
.build()