[iOS] KakaoMapsSDK 렌더링 중 크래시 문의

,

안녕하세요. iOS 앱에서 지도 렌더링 도중 메인 스레드가 크래시되어 문의드립니다.

1. 환경

- KakaoMapsSDK 2.12.14 (2.12.11 에서도 동일 스택 확인)

- iOS / Firebase Crashlytics 수집

- 최초 관측 : 2026년 8월 초

2. 크래시 스택

Crashed: com.apple.main-thread

0 KakaoMapsSDK kakao::scene::layer::K3gSubLayer::extractVisibleShape(…) + 160

1 KakaoMapsSDK kakao::scene::DefaultSceneManager::extractScene(…) + 52

2 KakaoMapsSDK kakao::view::RenderView::draw(bool) + 76

3 KakaoMapsSDK kakao::app::MTLAppEngine::render() + 280

4 QuartzCore CA::Display::DisplayLinkItem::dispatch_(…) + 64

전체 스레드 덤프는 첨부하였습니다.

3. 확인된 사항

- 서로 다른 세션·날짜의 크래시가 오프셋(+160)까지 동일합니다. 단일 경로로 보입니다.

- SDK 버전(2.12.11 / 2.12.14), 앱 화면과 무관하게 발생합니다.

- 며칠간 0건이다가 특정 일자에 집중되는 산발적 패턴입니다.

- 확인한 모든 크래시 세션에서 크래시 시점에 SDK 가 리소스를 받는 중이었습니다.

kakao::base::io::net::Http2Connector::handle_perform_multi(...)

kakao::content::AsyncDownloaderManager::start()::$\_0

Curl_getaddrinfo_ex / getaddrinfo_thread

메인 스레드가 씬을 순회하는 동안 다운로더 스레드가 씬/리소스를 갱신하면서

발생하는 문제가 아닌지 의심하고 있습니다. 산발적 발생도 네트워크 타이밍

의존으로 설명이 됩니다.

4. 당사 사용 방식

- 모든 지도 API 는 메인 스레드에서만 호출합니다.

- ShapeManager 의 addShapeLayer / removeShapeLayer,

addPolygonStyleSet, addMapPolygonShape / removeMapPolygonShape 사용

- RouteManager 의 addRouteLayer 로 경로선 표출

- 화면 전환·백그라운드 복귀 시 레이어를 일괄 제거 후 같은 런루프에서 재생성

- 포그라운드 복귀 시 activate() 직후 shape 갱신

5. 문의 사항

(1) 해당 크래시가 알려진 이슈인지, 2.12.x 중 관련 수정이 반영된 버전이 있는지

확인 부탁드립니다.

(2) ID 재사용 관련하여 아래가 안전한지 확인 부탁드립니다.

- 이미 등록된 styleSetID 로 addPolygonStyleSet 재호출

  (기존 스타일셋을 참조 중인 shape 이 남아 있는 경우 포함)

- removeShapeLayer 직후 같은 런루프에서 동일 layerID 로 addShapeLayer

- 이전에 사용한 shapeID 재사용

추가로, removeShapeLayer 시 스타일셋도 함께 정리되는지, 스타일셋만

개별 제거하는 API 가 있는지 알려주시면 감사하겠습니다.

(3) shape 추가·제거의 안전한 호출 시점 가이드가 있나요?

메인 스레드 호출만으로 충분한지, activate() 직후 바로 조작해도 되는지

궁금합니다.

(4) 리소스 다운로드 중 씬 갱신과 렌더링이 동기화되는지 확인 부탁드립니다.

앱 측에서 제어 가능한 부분이 있다면 안내 부탁드립니다.

감사합니다.

@티머니모빌리티0529 안녕하세요.

  1. 해당 이슈 관련하여 2.12.18 버전이 배포되었습니다. 이 버전으로 업데이트 후 확인해 보시기 바랍니다.
  2. 이미 등록된 ID로 다시 add 하려고 시도하는 경우 무시됩니다.
  3. addViewSucceeded 이벤트 수신 후 사용하시면 됩니다.
  4. 내부적으로 동기화 합니다.

안녕하세요. 회신 감사합니다.
내부 보고 및 정리를 위해 추가 문의 드립니다.

  1. 아직 2.12.18 이 Log 로는 안보이는데 업데이트 예정인건가요?
  2. AOS 도 동일한 날짜에 동일한 이슈가 발생 했는데 관련하여 버전 업데이트가 있을까요??
  3. 현재 iOS는(2.12.14), AOS(2.13.2) 사용 중인데 파이어베이스 크래시리틱스를 확인했을때 8/10 ~ 갑자기 일어난 이슈로 확인됩니다. 발생된 원인이 따로 있을까요?? 내부 보고를 위하여 원인 파악이 필요한 상태 입니다만, 저희쪽 로그로만으로는 확인이 불가능하여 회신 요청 드립니 다.

안녕하세요. 확인 부탁 드립니다.

  1. API 사이트 배포에 이슈가 있어 아직 공지는 올라가지 않았지만 배포는 되어 있습니다.
  2. Android 버전(2.15.0)도 배포되었습니다.
  3. 원인은 엔진쪽과 데이터쪽의 호환성 이슈입니다. 갑자기 이슈가 증가한 타이밍에 서버쪽 데이터 배포가 있었습니다.

저희쪽 로그 확인했을때는 기존 오류 0건에서 13일에 가장 많은 오류가 발생 되었고 그 뒤로도 하루에 50~100건 정도 잡히는것으로 보여지는데 서버쪽 데이터 배포 관련된 이슈였고 원복 or 수정후 재배포가 되었다면.. 13일 이후로는 다시 0건이 발생되어야 하는거 같은데요. 우선 안내주신 버전으로 업데이트 후 앱 배포 시 발생 안되는걸로 인지해도 될까요??

데이터 버전의 변경이 발생하는 타이밍에 문제가 발생하는 것이라서 데이터 버전 변경 → 원복 하는 과정에서 문제가 발생하였을 수 있고 서버 데이터 수정은 한번 더 있을 예정입니다. 업데이트 한 앱은 발생하지 않을겁니다.

서버 데이터 수정 한번 더 있을 수 있다고 말씀 주셨는데 그때까지 카카오 맵 버전 업데이트가 진행되지 않은 사용자들은 문제가 발생될수 있을까요? 서버 데이터 수정 예정일도 공유가 가능하다면 공유 요청 드립니다.

업데이트 하지 않은 사용자들은 문제가 다시 발생할 수 있습니다. 서버 작업 일정은 아직 확정되지 않았습니다.

안녕하세요.
iOS 2.12.18 로 업데이트하여 앱 배포 하였는데요. 운영환경에서 다른 이슈로 크래시가 발생되고 있습니다. 2.12.14 에서는 관측되지 않던 이슈 입니다. 크래시 지점이 전부 SDK 내부로 확인 했습니다.

  1. 확인했을때는 resetEngine 하고 이후에 재진입시 이미 해제 완료된것을 참조하는것으로 보여지는데요. 관련하여 이전에도 비슷한 현상이 있었고 업데이트가 진행된것으로 알고 있는데 같은 현상 일까요?
  1. 2.12.19 가 새로 업데이트 되었는데 관련된 업데이트 일까요?

  2. 2.12.14 → 2.12.18 사이에 관련하여 수정된게 있을까요?? 저희쪽 크래시리틱스 로그 함께 첨부하여 보내 드립니다.

KakaoMapsSDK_2.12.18_crash_2.6.9_1997_sanitized.txt (33.6 KB)

@vectordev 안녕하세요.
iOS 뿐만 아니라 AOS 에서도 크래시 발생 중이며, 동일하게 신규 버전 업데이트 된것으로 확인 되는데요.
함께 확인 요청 드립니다.

2.12.19에 해당 내용 수정되었습니다. Android도 마찬가지로 최근 수정버전인 2.15.1에 동일한 내용 적용되었습니다.

@vectordev
내부 보고가 필요한 상황인데 업데이트 로그를 확인해보면 그냥 간헐적 크래시 이슈 수정 이라고만 적혀있는 상태라서
AOS iOS 각각 어떤 이슈가 수정되었는지 공유 부탁 드립니다.

iOS
2.14.18 → 2.14.19 수정사항

AOS
2.15.0 → 2.15.1 수정사항

Command 실행과 관련된 동기화 이슈가 수정되었다고 보시면 될 것 같습니다.