Chỉ đường đến các điểm trên đường đi

Navigation SDK cho iOS cung cấp các cách nâng cao để chỉ định điểm tham chiếu, giúp định tuyến chính xác hơn và mang lại trải nghiệm đến nơi tốt hơn, đặc biệt là đối với những điểm đến có nhiều lối vào hoặc điểm truy cập cụ thể. Bạn có thể định tuyến đến các vị trí chính xác bằng navigationPointToken hoặc bằng cách kết hợp toạ độ vị trí với Mã địa điểm để có thêm ngữ cảnh.

Tính năng làm nổi bật điểm đến sẽ tiếp tục được thực hiện nếu có.

Thông tin khái quát

Trước phiên bản 10.10, bạn có thể xác định Waypoint bằng cách sử dụng toạ độ vị trí hoặc Mã địa điểm. Mặc dù đôi khi có hiệu quả, nhưng việc chỉ định tuyến đến a vĩ độ và kinh độ có thể dẫn đến các điểm dừng hoặc điểm đón không tối ưu, đặc biệt là đối với các địa điểm lớn, công viên hoặc toà nhà có nhiều lối vào. Kết quả có thể được điều chỉnh theo đoạn đường gần nhất, có thể không phải là điểm truy cập thuận tiện hoặc chính xác nhất.

Các lựa chọn nâng cao về điểm tham chiếu giải quyết vấn đề này bằng cách cho phép bạn cung cấp thêm ngữ cảnh.

Sử dụng mã thông báo Điểm điều hướng

Để định tuyến chính xác nhất đến các điểm truy cập cụ thể như lối vào, bến bốc dỡ hàng hoặc khu vực đón khách được chỉ định, bạn có thể sử dụng navigationPointToken.

Bạn có thể lấy mã thông báo này bằng cách gọi phương thức Điểm đến của Geocoding API. Mã thông báo này đại diện cho một điểm điều hướng cụ thể, có thể định tuyến được liên kết với một địa điểm.

Cách chỉ định mã thông báo Điểm điều hướng:

  1. Lấy navigationPointToken từ phương thức Điểm đến của phản hồi Geocoding API.

  2. Chỉ định navigationPointToken khi bạn tạo GMSNavigationWaypoint.

Lưu ý: Bạn không thể đồng thời chỉ định mã thông báo Điểm điều hướng cùng với vị trí và PlaceID.

Swift

// Create a waypoint using a navigation endpoint token
let waypointTwo = GMSNavigationWaypoint(
  navigationPointToken: "ChIJALijSXPhQkARHmIozCCbXsASEgkFVjYHGH6PgBFrbM7wl3.."
  title: "Sydney Opera House")

// Route to the waypoint
navigator.setDestinations([waypointTwo]) { [weak self] routeStatus in
   self?.handleRouteCallback(status: routeStatus)
}

Objective-C

GMSNavigationWaypoint *waypointTwo = [[GMSNavigationWaypoint alloc] initWithNavigationPointToek:@"sampleNavigationPointToken"

Kết hợp Mã địa điểm và Vị trí

Kể từ phiên bản 10.10, bạn có thể cung cấp cả Mã địa điểm và toạ độ vị trí khi tạo điểm tham chiếu. Phương thức này hữu ích khi bạn muốn chỉ định một điểm chính xác (vị trí) trong khi vẫn cung cấp ngữ cảnh của địa điểm tổng thể (Mã địa điểm). Điều này cho phép Navigation SDK mang lại trải nghiệm đến nơi phong phú hơn bằng cách làm nổi bật toà nhà đích hoặc hiển thị các địa điểm quan tâm gần đó liên quan đến Mã địa điểm.

Swift

// Create a waypoint using both the latlng and placeID
let waypoint = GMSNavigationWaypoint(
  location: CLLocationCoordinate2DMake(-33.85657945261524, 151.21535034203333),  
  placeID: "ChIJ3S-JXmauEmsRUcIaWtf4MzE",
  title: "Sydney Opera House")

// Route to the waypoint
navigator.setDestinations([waypoint]) { [weak self] routeStatus in
   self?.handleRouteCallback(status: routeStatus)
}

Objective-C

CLLocationCoordinate2D location = CLLocationCoordinate2DMake(47.67, -122.20);
GMSNavigationWaypoint *waypoint = [[GMSNavigationWaypoint alloc] initWithLocation:placeID:coordinate title:@"waypoint from location and placeiD"];

Những điều cần lưu ý:

Khi bạn cung cấp cả placeIDlocation:

  • Tuyến đường chủ yếu nhắm đến location được chỉ định.
  • placeId được dùng làm ngữ cảnh để nâng cao trải nghiệm đến nơi.
  • Dự phòng: Nếu SDK xác định rằng placeId được cung cấp tương ứng với một tính năng quá xa location đã cho, thì placeId sẽ bị bỏ qua. Trong trường hợp này, quá trình định tuyến sẽ chỉ diễn ra đến location và các tính năng nâng cao trải nghiệm đến nơi dành riêng cho địa điểm sẽ không hoạt động.

Tóm tắt các cấu hình điểm tham chiếu hợp lệ

Thông số kỹ thuật location placeID navigationPointToken Hành vi định tuyến Làm nổi bật điểm đến
Chỉ toạ độ vị trí đặt không có không có Định tuyến đến đoạn đường gần nhất với toạ độ đã xác định Xuất hiện nếu có thể suy ra điểm đến với độ tin cậy cao
Chỉ Mã địa điểm không có đặt không có Định tuyến đến điểm điều hướng mặc định cho Mã địa điểm Từ Mã địa điểm
Chỉ mã thông báo điểm điều hướng không có không có đặt Định tuyến đến điểm điều hướng chính xác do mã thông báo đại diện Từ điểm đến được xác định trong phương thức điểm đến ban đầu của yêu cầu Geocoding API
Kết hợp toạ độ vị trí và Mã địa điểm se đặt không có Định tuyến đến đoạn đường gần nhất với toạ độ đã xác định Từ Mã địa điểm, mặc dù không xuất hiện nếu Mã địa điểm quá xa toạ độ vĩ độ/kinh độ