管理航点

默认情况下,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 度范围内)。

设置停靠偏好设置

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

运作方式

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

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