管理航点

默认情况下,Android 版 Navigation SDK 会找到前往航点的最快路线,但这并不能保证车辆会到达消费者等待的路边,也不能保证到达地点适合司机停车。本指南介绍了可用于这些情况的两项功能:

  • 道路一侧的路线偏好设置
  • 中途停留功能

路线一侧的路线偏好设置

为停靠点创建途经点时,您可以设置到达道路特定一侧的偏好设置。您可以通过以下两种方式之一指定偏好:偏好同一侧道路,或提供到达航向。

首选同一侧道路

您提供途经点的地理坐标,然后设置一个标志 (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()