이 문서에서는 두 가지 기능을 사용하여 앱의 경유지 환경설정을 관리하는 방법을 설명합니다.
- 도로 측면 라우팅 환경설정
- 경유지
도로 측면 라우팅 환경설정 지정

기본적으로 iOS용 Navigation SDK는 경유지로 가는 가장 빠른 경로를 찾지만, 이 경로가 사용자가 원하는 도로 측면(예: 차량 공유 운전기사의 고객이 기다리는 도로 측면)에 도착하도록 보장하지는 않습니다. 도로 측면 라우팅 환경설정 기능을 사용하면 차량이 올바른 도로 측면에 도착하도록 할 수 있습니다.
작동 방식
해당 정류장의 경유지를 만들 때 특정 도로 측면에 도착하는 환경설정을 지정합니다. 다음 두 가지 방법 중 하나로 환경설정을 지정할 수 있습니다.
동일한 도로 측면 선호
경유지의 지리적 좌표를 제공한 다음 경유지와 동일한 도로 측면(가장 가까운 보도에 스냅됨)에 도착하는 것을 선호함을 나타내는 플래그
preferSameSideOfRoad
를 설정합니다.
(nullable instancetype)initWithLocation:(CLLocationCoordinate2D)location
title:(NSString *)title
preferSameSideOfRoad:(BOOL)preferSameSideOfRoad;
도착 방향 설정
경유지의 지리적 좌표를 제공한 다음 목적지와 동일한 도로 측면의 교통 흐름 방향과 일치하는 도착 방향
preferredSegmentHeading
을 제공합니다.
(nullable instancetype)initWithLocation:(CLLocationCoordinate2D)location
title:(NSString *)title
preferredSegmentHeading:(int32_t)preferredSegmentHeading;
Navigation SDK는 경유지에 가장 가까운 도로 구간을 선택합니다. 이 도로 구간은 경유지가 있는 도로 측면과 차선 방향이 정렬되어 있습니다 (±55도 이내).
경유지 환경설정 지정
특정 장소에서는 사용자가 안전하게 정차할 수 없습니다 (예: 고가 지역, 페리, 지하 위치, 기타 접근이 제한된 지역). 경유지 기능은 경유지의 위치가 사용자가 정차하기에 적합하지 않은 경우 경유지를 근처 장소로 재배치합니다. 대체 위치를 사용할 수 있는 경우 경로가 계산될 때 vehicleStopover를 YES로 설정하면 경유지가 자동으로 재배치됩니다.
작동 방식
해당 정류장의 경유지를 만들 때 경유지 환경설정을 지정합니다.
이렇게 하려면 다음 예와 같이 GMSNavigationMutableWaypoint에서 경유지 환경설정을 설정합니다.
Swift
let location = CLLocationCoordinate2D(latitude: 47.67, longitude: -122.20) let waypoint = GMSNavigationMutableWaypoint(location: location, title: "waypoint from location")! waypoint.vehicleStopover = true mapView.navigator?.setDestinations([waypoint], routingOptions: routingOptions, callback: {...})
Objective-C
CLLocationCoordinate2D location = CLLocationCoordinate2DMake(47.67, -122.20); GMSNavigationMutableWaypoint *waypoint = [[GMSNavigationMutableWaypoint alloc] initWithLocation:location title:@"waypoint from location"]; waypoint.vehicleStopover = YES; [_mapView.navigator setDestinations:@[waypoint1] routingOptions:routingOptions callback:^(GMSRouteStatus routeStatus){...}];