Phần này trình bày cách đặt điểm đến của xe sau khi máy chủ của bạn khớp một chuyến đi với một chiếc xe.
Trước khi bắt đầu
Bạn phải hoàn tất những việc sau đây để hoàn thành phần này:
Đặt điểm đến trong ứng dụng dành cho tài xế
Sau khi ghép nối người tiêu dùng với tài xế, bạn phải định cấu hình điểm đến của chuyến đi trong ứng dụng dành cho tài xế bằng cách thực hiện các bước sau:
Truy xuất đích đến của xe từ bộ sưu tập điểm tham chiếu trong Fleet Engine, được trả về theo
GetTrip(),UpdateTrip()vàGetVehicle().Đặt đích đến bằng cách gọi phương thức Navigation SDK cho iOS
setDestinations().
Các ví dụ sau đây cho thấy cách thiết lập đích đến trong ứng dụng dành cho người lái xe.
Swift
private func startNavigation() {
  let destinations = [
    GMSNavigationWaypoint(
      placeID: "ChIJnUYTpNASkFQR_gSty5kyoUk", title: "PCC Natural Market"),
    GMSNavigationWaypoint(
      placeID: "ChIJJ326ROcSkFQRBfUzOL2DSbo", title: "Marina Park"),
  ]
  mapView.navigator?.setDestinations(destinations, callback: { routeStatus in
    guard routeStatus == .OK else {
      // Error starting navigation.
      return
    }
    mapView.locationSimulator?.simulateLocationsAlongExistingRoute()
    mapView.navigator?.isGuidanceActive = true
    mapView.navigator?.sendsBackgroundNotifications = true
    mapView.cameraMode = .following
  })
}
Objective-C
- (void)startNavigation {
  NSArray<GMSNavigationWaypoint *> *destinations =
  @[[[GMSNavigationWaypoint alloc] initWithPlaceID:@"ChIJnUYTpNASkFQR_gSty5kyoUk"
                                             title:@"PCC Natural Market"],
    [[GMSNavigationWaypoint alloc] initWithPlaceID:@"ChIJJ326ROcSkFQRBfUzOL2DSbo"
                                             title:@"Marina Park"]];
  [_mapView.navigator setDestinations:destinations
                             callback:^(GMSRouteStatus routeStatus) {
                               if (routeStatus != GMSRouteStatusOK) {
                                 // Error starting navigation.
                                 return;
                               }
                               [_mapView.locationSimulator simulateLocationsAlongExistingRoute];
                               _mapView.navigator.guidanceActive = YES;
                               _mapView.navigator.sendsBackgroundNotifications = YES;
                               _mapView.cameraMode = GMSNavigationCameraModeFollowing;
                             }];
}