管理航点

默认情况下,Navigation SDK for Android 会找到前往航点的最快路线,但这并不能保证车辆会到达消费者等待的那一侧道路,也不能保证到达地点可供司机安全停车。本指南介绍了您可以在这些情况下使用的两项功能:

  • 道路一侧路线偏好设置
  • 停靠点功能

道路一侧路线偏好设置

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

首选道路同侧

您需要提供航点的地理坐标,然后设置一个标志 (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 度范围内)。

设置中途停留偏好

在某些地点,司机无法安全停车(例如高架区域、渡轮、地下位置和其他出入受限的区域)。如果航点的位置不适合车辆停靠,Stopover 功能会将航点重新定位到附近的地点。如果您将 setVehicleStopover 设置为 true,则在计算路线时,如果有备用位置,系统会自动重新定位航点。

运作方式

您可以在为经停点创建航点时设置经停点偏好设置。为此,请指定 setVehicleStopover 偏好设置,如以下示例所示:

Waypoint waypoint =
   Waypoint.builder()
           .setLatLng(latitude, longitude)
           .setTitle("Somewhere in Sydney")
           .setVehicleStopover(true)
           .build()