이 섹션에서는 서버가 이동 경로를 차량과 일치시킨 후 차량의 목적지를 설정하는 방법을 설명합니다.
시작하기 전에
이 섹션을 완료하려면 다음을 완료해야 합니다.
운전자 앱에서 목적지 설정
소비자를 운전자와 페어링한 후에는 다음 단계에 따라 운전자 앱에서 경로의 목적지를 구성해야 합니다.
Fleet Engine의 웨이포인트 컬렉션에서 차량의 목적지를 가져옵니다. 이 컬렉션은
GetTrip()
,UpdateTrip()
,GetVehicle()
에 의해 반환됩니다.iOS용 Navigation SDK 메서드
setDestinations()
를 호출하여 대상을 설정합니다.
다음 예는 운전자 앱에서 대상을 설정하는 방법을 보여줍니다.
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;
}];
}