Cette section explique comment définir la destination du véhicule une fois que votre serveur a mis en correspondance un trajet avec un véhicule.
Avant de commencer
Pour cette section, vous devez avoir effectué les opérations suivantes:
Définir la destination dans l'application conducteur
Une fois qu'un client a été associé à un chauffeur, vous devez configurer la destination du trajet dans l'application du chauffeur en procédant comme suit:
Récupérez la destination du véhicule à partir de sa collection de points de cheminement dans Fleet Engine, qui est renvoyée par
GetTrip()
,UpdateTrip()
etGetVehicle()
.Définissez la destination en appelant la méthode
setDestinations()
du SDK Navigation pour iOS.
Les exemples suivants montrent comment définir la destination dans l'application du conducteur.
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;
}];
}