자주 묻는 질문(FAQ)
제품 정보
- Navigation SDK 약관의 적용 방식 어떻게 해야 하나요?
- 음성 안내는 어떤 언어를 지원하나요?
- 운전자가 운전석에 있을 때 방위가 유지되나요? 내비게이션 모드가 종료되나요?
- 시작 시 다중선을 사용할 수 있나요? 경로 변경인가요?
- 앱 사용자는 Google 지도가 있어야 하나요? 무엇이었나요?
- Navigation SDK가 음식점 및 기타 목적지 근처의 주차 공간은 어디인가요?
- Navigation SDK는 회전 지점에 접근하면 차선에 통행 방향을 제시하나요?
- Navigation SDK 선택 모바일 서비스 고객만 API를 사용해야 하나요?
문제
네트워크
데이터
- 모든 URL을 가져올 수 있나요? 정류장/목적지를 미리 확인하는 방법
- 세부 경로 안내 사용 가능 어떻게 해야 할까요?
- 예상 도착 시간 (ETA)를 앱 사용자에게 알렸나요?
RoadSnappedLocationProvider
드라이버의 정보를 얻는 데 탐색이 포그라운드에 있지 않은 경우 현재 맞춰진 위치를 표시할까요?- Navigation SDK는 지오펜싱을 지원하나요?
- 어떤 상황에서도 알림을 사용 중지할 수 있나요? 내비게이션 앱이 백그라운드에 있나요?
UI 맞춤설정
- 가장 적합한 색상 코드를 지정할 수 있나요? 경로 옵션에는 어떤 것이 있나요?
- Navigation SDK가 최종 목적지의 도착예정시간은 어떻게 확인할 수 있나요?
- 도착예정시간 업데이트를 숨기려면 어떻게 해야 하나요?
- 어떤 UI 맞춤설정이 중요한가 지원되나요?
라우팅
- 구체적인 경로를 제공할 수 있나요? 대체 경로를 삭제하시겠어요?
- 운전자에게 다른 라벨을 표시할 수 있나요? 기본 목적지 위치가 아닌 목적지인가요?
- Navigation SDK를 사용할 수 있나요? 편차를 추적할 수 있나요?
- 운전자가 실수로 내비게이션을 종료할 수 있나요? 무엇인가요?
시뮬레이터
워크플로
- 탐색 프래그먼트는 무엇인가요? (Android만 해당) 를 통해 개인정보처리방침을 정의할 수 있습니다.
제품 정보
- 앱에서는 Navigation SDK 약관이 포함된 대화상자를 구현해야 합니다. 각 운전자가 수락해야 하는 서비스 고지를 제공합니다. 이 대화상자는 드라이버가 서비스 약관에 동의할 수 있는 기회를 제공합니다. 약관의 텍스트 파일 Navigation SDK와 함께 제공됩니다.
- Android에서는
NavigationApi.showTermsAndConditionsDialog
메서드를 사용하여 검색어가 포함된 대화상자를 표시합니다. 를 통해 개인정보처리방침을 정의할 수 있습니다.
- iOS에서는
GMSNavigationServices.showTermsAndConditionsDialogIfNeededWithCompanyName
입니다. - Google 모바일 지도에서 지원하는 언어는 모두 자동으로 사용할 수 있습니다. 기기에 기본 시스템 언어가 있으며 앱에서 이 설정을 변경할 수 없습니다. 하지만 앱에서 70개 이상의 언어에 액세스할 수 있습니다.
-
예. Android에서
LocationListener
는 시작되면 계속해서 백그라운드에서 실행됩니다 앱이 계속해서 도로 위치를 스냅하고 영향을 줍니다.iOS에서 위치 및 방위에 대한 위치 업데이트를 계속 받으려면 백그라운드에서 도로 맞추기를 구현하고
allowsBackgroundLocationUpdates
에서YES
(으)로 -
예. 경로를 만들거나 변경하면
RouteChangeListener
다중선을 제공합니다. - 아니요, Navigation SDK에는 Google 모바일 지도가 필요하지 않습니다. 기기에 설치되어야 합니다.
- 아니요. Navigation SDK는 현재 이 기능을 제공하지 않습니다. 있습니다.
- 예. 통행 방향이 기본적으로 사용 가능하며 표시됩니다.
- Navigation SDK 선택 모바일 서비스 고객만 API를 사용해야 하나요?
-
Navigation SDK에는 모빌리티 서비스 고객만 사용할 수 있는 여러 API가 있으며, 이러한 API는 Google에서 트랜잭션 단위로 요금을 청구합니다. 모바일 서비스 고객이 아닌 경우 다음 방법은 노옵스(no-ops)입니다.
문제
- Xcode 12에서 앱은 시뮬레이터용으로 올바르게 빌드되지 않습니다. 이 문제를 해결하려면 어떻게 해야 하나요?
-
이 문제를 해결하려면 Xcode 프로젝트 빌드 설정을 열고 'iOS 시뮬레이터' 빌드의 경우에만
Excluded Architectures
에arm64
를 추가합니다.자세한 내용은 다음 StackOverflow 스레드를 참고하세요.
- GMSMapView가 로드되지 않습니다.
-
GMSMapView가 로드되지 않는 경우:
- Cloud 콘솔에서 NavSDK가 사용 설정되어 있는지 확인합니다.
- Nav SDK가 설치되어 있지만 프로젝트에서 Nav SDK API를 사용하지 않는 경우 바이너리에서 삭제하세요.
네트워크
- Navigation SDK는 연결 상태가 좋지 않은 경우 어떻게 처리하나요?
- Navigation SDK는 각 여정의 경로를 사전 캐시합니다. 사전 캐시된 정보에는 15~20분 간의 라우팅 정보가 포함됩니다. 운전자가 경로를 벗어나는 경우에 대비해 대체 경로를 제공합니다. 이 Navigation SDK는 기기 GPS를 사용하여 위치를 추정하고 있습니다.
- 오프라인 모드를 사용할 수 있나요?
- 아니요, Navigation SDK는 오프라인 모드일 수 있습니다. 사전 캐시된 정보를 제공하고 생각해 보세요
데이터
- 여정을 시작하기 전에 모든 정류장/목적지를 검색할 수 있나요? 경로
-
예. Android에서 경로에 대한 경로를 가져오려면 다음을 호출합니다.
Navigator.getRouteSegments()
iOS에서는
GMSNavigator.routeLegs(read)
를 호출합니다. - 경로 시작 시 세부 경로 안내를 사용할 수 있나요?
- 예. Navigation SDK는 경로 세그먼트 목록을 제공합니다. 또한 운전자는 헤더의 경로 카드를 스와이프하여 각 방법을 확인할 수 있습니다.
- 도착예정시간이 앱 사용자에게 어떻게 전달되나요?
-
Android에서 다음 단계에 따라 앱 사용자에게 도착예정시간 정보를 제공하세요.
- 를 사용하여 모든 경유지에 대한 시간 및 거리를 검색합니다.
Navigator.getTimeAndDistanceList()
- 다음 단계에 따라 이 정보를 클라이언트 애플리케이션에 전달하세요. 현재 운전자 도착예정시간에 대해 하고 있습니다.
iOS에서 다음 단계에 따라 앱 사용자에게 도착예정시간 정보를 제공하세요.
- 다음을 사용하여 여정의 구간을 검색합니다.
Navigator.getRouteSegments()
- 각 여정 구간에
GMSNavigator.timeToNextDestination
를 호출합니다. - 자동으로 클라이언트 애플리케이션에 시간 정보를 전달합니다. 현재 운전자 도착예정시간에 대해 하고 있습니다.
- 를 사용하여 모든 경유지에 대한 시간 및 거리를 검색합니다.
-
RoadSnappedLocationProvider
를 사용하여 운전자의 정보를 가져올 수 있나요? 탐색이 포그라운드에 있지 않은 경우 현재 맞추기된 위치를 표시할까요? -
예. Android에서
RoadSnappedLocationProvider
는 기본적으로 설정됩니다.iOS에서 탐색을 백그라운드에서 계속 실행하려면 리스너를 구현합니다.
GMSRoadSnappedLocationProviderListener
로 설정하고 속성allowsBackgroundLocationUpdates
를TRUE
로 설정합니다. - Navigation SDK는 지오펜싱을 지원하나요?
-
아니요. 탐색 컨텍스트에서는
remainingTimeOrdistanceChangeListener
단순한 지오펜싱에 비해 유리합니다 지오펜싱은 도로 형태가 표시되며, 도로가 이동할 정확한 지점에 중심을 맞추지 못할 수도 있습니다. 운전자가 내비게이션을 이용하고 있습니다.다음을 사용하여 이 기능의 근사치를 구할 수 있습니다.
remainingTimeOrdistanceChangeListener
- 임곗값을 설정하여 콜백 빈도를 결정합니다.
- 목적지까지 남은 거리를 확인합니다.
예를 들어 임곗값을 100m로 설정하면 목적지까지의 거리가 변경되면 콜백이 수신됨 있습니다. 거리가 줄어들면 이 임계값을 더 자주 콜백을 받을 수 있습니다. 그런 다음, 프레임에서 남은 거리를 점검하고 승차/하차 위치와 충분히 가까운지 확인합니다.
iOS에서
GMSNavigatorListener.didUpdateRemainingDistance
리스너를 구현합니다. 알림 간 거리를 관리할 수 있습니다. - 내비게이션 앱이 백그라운드에 있을 때 알림을 사용 중지할 수 있나요?
-
예. Android에서는
Navigator.setHeadsUpNotificationEnabled
를 사용합니다. 알림을 제어할 수 있습니다. 이 메서드에는 불리언 인수가 있습니다.FALSE
알림을 비활성화합니다.TRUE
는 알림을 사용 설정합니다.iOS에서는
GMSRoadSnappedLocationProvider.allowsBackgroundLocationUpdates
설정 '아니요'로 변경합니다.기타 위치 알림에 대한 백그라운드 처리를 사용하지 않으려면
GMSNavigator.sendsBackgroundNotifications(NO)
UI 맞춤설정
- 최적 경로 옵션에 색상을 지정할 수 있나요?
- 아니요. 특정 경로 옵션에 대한 색상 지정은 현재 지원되지 않습니다.
- Navigation SDK에서 최종 목적지의 도착예정시간을 표시할 수 있나요?
-
예. Android에서는 다음 메서드를 사용합니다.
- 를 사용하여 모든 경유지에 대한 시간 및 거리를 검색합니다.
Navigator.getTimeAndDistanceList()
- 를 사용하여 현재 경유지의 도착예정시간을 숨깁니다.
NavigationFragment.setEtaCardEnabled(false)
- 최종 목적지 ETA를 렌더링합니다.
iOS에서는 다음을 사용합니다.
GMSNavigator.routeLegs(read)
를 호출합니다.- 마지막 구간에서 호출
GMSNavigator.timeToNextDestination
- 를 사용하여 현재 경유지의 도착예정시간을 숨깁니다.
MSMapView.settings.navigationFooterEnabled=NO
에서 FALSE로 변경합니다. - 최종 목적지 ETA를 렌더링합니다.
- 를 사용하여 모든 경유지에 대한 시간 및 거리를 검색합니다.
- 도착예정시간 업데이트를 숨기려면 어떻게 해야 하나요?
-
다음 방법을 사용하면 도착예정시간 카드를 사용 중지할 수 있습니다.
- Android에서는
navigationView.setEtaCardEnabled(false)
를 사용합니다. - iOS에서는
GMSMapView.settings.navigationFooterEnabled=NO
를 사용합니다.
- Android에서는
-
Android에서는
StylingOptions
를 사용하여 배경을 설정합니다. 색상 스타일 지정 헤더 및 바닥글에 표시하려면setHeaderEnabled
및 다음의setFooterEnabled
멤버 함수:NavigationFragment
입니다.iOS에서는 다음을 사용합니다.
GMSMapView.settings.navigationHeaderPrimaryBackgroundColor
을 사용하여 배경색 스타일을 설정합니다. 머리글 및 바닥글 숨기기 또는 표시하기navigationFooterEnabled
사용 및GMSUISettings
의navigationHeaderEnabled
속성
라우팅
- 구체적인 경로를 알려주실 수 있나요? 운전자에게 전달하거나 대체 경로를 삭제하시겠습니까?
- 아니요. 기본적으로 여러 경로가 제공되며 가장 빠른 경로가 우선합니다. 다음과 같은 환경설정을 추가하여 기본 경로에 영향을 줄 수 있습니다. ' 고속도로와 유료도로" 추가할 수 있습니다. 경유지를 추가하면 경로에도 영향을 줍니다.
- 앱 사용자에게 기본값과 다른 대상 라벨을 표시할 수 있나요? 도착 위치:
-
예. Android에서
Marker
를 만듭니다. 목적지 및 위도/경도에 대한 맞춤형 제목입니다. 이 맞춤 제목과 좌표를 표시하는 Navigation SDKNavigationMap
iOS에서는 대상의
GMSMarker
를 만들고 표시합니다. - Navigation SDK를 사용하여 정의된 경로로부터의 편차를 추적할 수 있나요?
-
예. Android에서
Navigator.setRouteChangedListener
를 사용하여 다음을 할 수 있습니다. 경로가 변경되거나 새 경로가 추천될 때 알림 수신:- 경로를 따라 기기 위치를 확인하는 리스너 등록
Navigator.setRouteChangedListener
메서드 사용 - 콜백 이벤트 핸들러
onRouteChanged
에 코드를 추가합니다.- 업데이트된 도착예정시간 및 거리 정보가 포함된 메시지를 앱 사용자에게 보냅니다.
- 기기 위치 추적
- [선택사항] 앱에서 처리해야 하는 다른 기능을 추가합니다. 규정된 경로를 벗어날 때
iOS에서는
GMSNavigator
및 그 리스너를 사용하여 다음을 수행합니다. 경로가 변경되거나 새 경로가 추천될 때 알림 수신:- 지도의 뷰 컨트롤러에서
GMSNavigatorListener
구현 세 가지 프로토콜과GMSRoadSnappedLocationProviderListener
프로토콜입니다. - 구현
GMSNavigatorListener.navigatorDidChangeRoute
routeLegs
및GMSNavigator
의currentRouteLeg
속성
- 경로를 따라 기기 위치를 확인하는 리스너 등록
-
예. Android에서
Navigator.stopGuidance()
메서드를 호출하여 내비게이션 중지iOS에서는
GMSNavigator.clearDestinations
를 호출합니다.
시뮬레이터
- 시뮬레이터에서 경로 변경을 지원하나요?
-
예. Android에서
simulateLocationsAlongNewRoute
를 호출하여 다음을 수행합니다. 경로 변경을 포함하는 여정을 시뮬레이션합니다.simulateLocationsAlongExistingRoute
메서드는 기존 경로의 변경사항을 무시합니다.iOS에서는
GMSLocationSimulator.simulateAlongNewRouteToDestinations
를 사용합니다. 경로 변경을 포함하는 여정을 시뮬레이션합니다. 예상하지 못한 경우 경로가 변경되면GMSLocationSimulator.simulateLocationsAlongExistingRoute
또는GMSLocationSimulator.simulateAlongNewRouteToDestinations
입니다.
워크플로
- 탐색 프래그먼트는 무엇인가요?
-
내비게이션 알림은 내비게이션 중에 계속 표시됩니다. 활동이 닫힐 때 차량이 탐색이 중지되고 알림이 사라집니다.
알림 클릭을 처리하려면
Navigator.startGuidance(intent resumeIntent)
를 사용합니다.resume intent
는 앱 사용자가 알림을 클릭하면 실행됩니다. 일반적으로Navigator.startguidance(getIntent())
는 다음에서 호출됩니다. 기본 Activity - 앱 사용자가 알림을 클릭하면 Activity를 다시 호출