前往導航點

Android 版 Navigation SDK 提供更完善的航點指定方式,可提供更準確的路線規劃和更優質的抵達體驗,特別是針對有多個入口或特定導航點的目的地。您可以透過 navigationPointToken 規劃前往精確位置的路線,也可以結合經緯度座標與地點 ID,取得更多相關資訊。如果適用,系統會繼續執行目的地醒目顯示功能。

背景

在 7.4 版之前,您可以使用經緯度座標地點 ID 定義 Waypoint。雖然有時有效,但僅根據經緯度規劃路線有時會導致上下車地點不理想,特別是大型場地、公園或有多個入口的建築物。結果可能會對應到最近的路段,但這可能不是最方便或正確的導航點。

加強型航點選項可提供更多背景資訊,解決這個問題。

使用導覽點權杖

如要取得最精確的路線,前往特定導覽點 (例如入口、裝卸碼頭或指定取貨區),請使用 navigationPointToken。呼叫 Geocoding API 的 destinations 方法即可取得這個權杖。代表與地點相關聯的特定可路由導覽點。

如要指定導覽點權杖,請按照下列步驟操作:

  1. Geocoding API 的 Destinations 方法回應中取得 navigationPointToken
  2. 使用建構工具中的 setNavigationPointToken() 方法建立 Waypoint

注意:使用 setNavigationPointToken() 時,無法同時使用 setLatLng()setPlaceIdString()。這些方法與 setNavigationPointToken() 互斥。

// Assuming 'navPointToken' is a String obtained from the destinations method of the Geocoding API
// Assuming 'destinationName' is a String title for the waypoint

Waypoint waypointWithToken = Waypoint.builder()
    .setTitle(destinationName)
    .setNavigationPointToken(navPointToken)
    .build();

// Use this waypoint in navigator.setDestinations()

結合地點 ID 與經緯度

從 7.4 版開始,建立 Waypoint 時,您可以同時提供地點 ID 和經緯度座標。如果您想指定精確點 (緯度/經度),同時提供整體地點的背景資訊 (地點 ID),這個方法就十分實用。這樣一來,Navigation SDK 就能醒目標註目的地建築物,或顯示與地點 ID 相關的附近景點,提供更豐富的抵達體驗。

// Assuming 'placeId' is the Place ID String
// Assuming 'lat' and 'lng' are the double values for latitude and longitude
// Assuming 'destinationName' is a String title for the waypoint

Waypoint waypointWithPlaceIdAndLatLng = Waypoint.builder()
    .setTitle(destinationName)
    .setPlaceIdString(placeId)
    .setLatLng(lat, lng)
    .build();

// Use this waypoint in navigator.setDestinations()

注意事項

同時提供 placeIdlatlng 時:

  • 路徑主要以指定的 latlng 為目標。
  • 系統會將「placeId」做為背景資訊,提升抵達體驗。
  • 回退:如果 SDK 判斷提供的 placeId 對應的功能與指定的 latlng 相差太遠,系統就會忽略 placeId。在這種情況下,系統只會繼續前往 latlng,且無法提供地點專屬的抵達體驗強化功能。

有效航點設定摘要

方法 setLatLng() setPlaceIdString() setNavigationPointToken() 轉送行為 目的地醒目顯示
僅限經緯度座標 set 缺席 缺席 導向最接近所定義座標的路段 如果系統能以高可信度推斷目的地,就會顯示這項資訊
僅限地點 ID 缺席 set 缺席 前往地點 ID 預設導航點的路線 起點地點 ID
僅限導航點權杖 缺席 缺席 set 前往以符記表示的精確導航點路線 從原始 Geocoding API 要求的 destinations 方法中定義的目的地
經緯度座標和地點 ID 的組合 set set 缺席 導向最接近所定義座標的路段 來自地點 ID,但如果地點 ID 與經緯度座標相距太遠,則不會顯示