Aracın hedefini belirleyin

Bu bölümde, sunucunuz bir seyahat için bir araçla eşleştikten sonra aracın hedefini nasıl ayarlayacağınız açıklanmaktadır.

Başlamadan önce

Bu bölümde aşağıdakileri tamamlamış olmanız gerekir:

Sürücü uygulamasında hedefi ayarlama

Bir tüketiciyi sürücüyle eşledikten sonra, aşağıdaki adımları uygulayarak sürücü uygulamasında seyahatin hedefini yapılandırmanız gerekir:

  1. Araç varış noktasını, Fleet Engine'daki yol noktası koleksiyonundan alın. Bu koleksiyon, GetTrip(), UpdateTrip() ve GetVehicle() tarafından döndürülür.

  2. iOS için Navigasyon SDK'sı yöntemini setDestinations() çağırarak hedefi ayarlayın.

Aşağıdaki örneklerde, sürücü uygulamasında hedefin nasıl ayarlanacağı gösterilmektedir.

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;
                             }];
}