KNSDK with UI 간헐적인 경로선 미표출 현상 문의

안녕하세요.
KNSDK with UI v1.9.4 버전 사용 중 경로선이 미표출되는 현상을 확인하여
아래 재현경로, 소스코드와 함께 문의드립니다.

[재현경로]

  1. KNSDK.sharedGuidance()?.startWithOutTrip() 호출하여 안심주행모드 실행
  2. 경로탐색하여 knTrip 생성
  3. 주행상태 초기화를 위한 KNSDK.sharedGuidance()?.stop() 호출
  4. knNaviView.initWithGuidance() 에 knTrip을 전달하여 경로주행모드 실행
  5. 간헐적으로 경로선이 미표출되며 guideState 확인 시 안심주행상태로 확인됨.

[소스코드]
KNSDK.sharedGuidance()?.apply {
knNaviView.mapComponent.setRouteTheme(…)
stop() // 재현경로 3
initWithGuidance(knTrip) // 재현경로 4
}

[문의사항]

  1. stop() 이 비동기적으로 호출되어 initWithGuidance() 호출 이후 상태가 초기화되는 것인가요?
  2. 경로선 관련 다른 문의를 확인해보니, 안심주행상태에서 경로주행모드로 변경하려고 할때는 guideNewDestination을 호출하도록 답변주신 내용을 확인하여 수정 적용해보았으나 knNaviView의 guidance가 init되어있지 않아 UninitializedPropertyAccessException가 발생합니다. initWithGuidance 호출 전 stop() 후 호출하는 방법이 옳은지, 다른 방법으로 naviView의 guidance를 초기화 후 경로주행모드를 실행하는 방법이 있는지 문의드립니다.

감사합니다.

안녕하세요, 카카오모빌리티 기술 제휴 담당자입니다.

안전 운행 주행 중 주행 경로를 변경하기 위해서는
말씀하신 guideNewDestination을 호출하시면 됩니다

안전 운행 주행 중 별도로 stop()을 호출
또는 안전 운행 주행 중인 KNNaviView를 종료하실 필요없이
guideNewDestination 함수를 호출하시면 주행 모드로 변경됩니다.

KNSDK.sharedGuidance()?.startWithOutTrip() 호출하여 안심 운행 주행 모드 실행합니다.
경로 탐색하여 knTrip 생성합니다.
knNaviView.guideNewDestination 에 knTrip을 전달하여 경로 주행모드를 실행하시면 됩니다.

안녕하세요. 답변 감사드립니다.

KNSDK.sharedGuidance()?.startWithOutTrip() 호출하여 안심 운행 주행 모드 실행합니다.
경로 탐색하여 knTrip 생성합니다.
knNaviView.guideNewDestination 에 knTrip을 전달하여 경로 주행모드를 실행하시면 됩니다.

knNaviView.guideNewDestination 에 knTrip을 전달하여 경로 주행모드를 실행하면
처음 문의사항의 2번과 같이 knNaviView의 guidance에 UninitializedPropertyAccessException이 발생합니다.

상황을 좀 더 구체적으로 말씀드리면 knNaviView는 주행화면에서만 생성하며, 주행화면이 생성되기 전인 최초화면에서
KNSDK.sharedGuidance()?.startWithOutTrip()를 호출하여 안심주행 실행하고 목적지 경로탐색 실행 후
주행화면으로 진입하여 주행모드로 변경하고자 할 때입니다.
확인 부탁드립니다.
감사합니다.

경로선이 노출되지 않았다면, 아래 내용을 확인해 주세요.

  • 정상적인 주행 화면 UI가 나왔는지 확인 (TBT, 하단 UI등)
  • guidanceGuideStarted()에서 guideState의 확인
  • 지도 줌아웃 또는 전체 경로 보기 상태에서 확인 (출발지의 위치가 부정확하여 경로가 다른곳에 그려지는 경우)

경로 주행 모드로 전환되었을 때의 화면을 첨부하여 주시면 확인하는데 도움이 될 것으로 보입니다.

감사합니다.