사용하셨던 v2 SDK 버전(최신은 2.6.3)은 어떻게 되나요?
→ 2.6.0 버전에서 테스트를 진행하였습니다.
→ 추가로 확인해보니 2.6.3 버전에서도 동일하게 버그가 발생합니다.
홈 화면을 갔다가 다시 카카오맵에 접근하면 화면이 터치되지 않는 오류가 발생한다. (ANR) 고 얘기해주셨는데, 100% 재현되는 현상인가요? 아니면, 가끔 혹은 간헐적으로 발생하나요?
→ ‘맵뷰가 초기화 되기 전(Before Start), 위에 있는 View 가 Gone, 혹은 Visible 처리되어야 한다.’ 라는 조건을 채우면 100% 재현됩니다.
→ 즉 원래는 Visibility 가 ‘Gone’ 인 View를 ‘Visible’ 하도록 처리하면 발생합니다. 그 반대도 성립합니다.
ANR 이 발생하는 상황 (홈 화면을 갔다가 다시 카카오맵에 접근하면 화면이 터치되지 않는 오류가 발생) 에서 Logcat 로그 중 “k3f” 필터링 된 로그 첨부도 부탁 드립니다.
→ ANR이 발생한 상황에서는 아무런 상호작용도 할 수 없고, 로그도 전혀 발생하지 않습니다. 대신 해당 오류 발생 전 출력하는 로그를 아래에 첨부드립니다.
2023-11-02 13:07:38.421 9715-9715 K3fAApi com.gaon.kakaomaptest D finish failed. SurfaceView is null.
2023-11-02 13:07:38.445 9715-9803 K3fAApi com.gaon.kakaomaptest D ---> RequestHeader(https://dapi.kakao.com/v2/maps/vector/auth) {Accept=[application/json], Authorization=[KakaoAK 248b07a1aa55d23bc7ba5f8562780bdb], KA=[sdk/13 mapSdk/2.6.0 os/android-33 lang/ko-KR device/SM-S901N origin/lZ8bHI+w3XYXbhZO+Ocri3S/kXo= android_pkg/com.gaon.kakaomaptest]}
2023-11-02 13:07:38.473 9715-9802 K3fAApi com.gaon.kakaomaptest D AppSpec : High spec
2023-11-02 13:07:38.473 9715-9802 K3fCore com.gaon.kakaomaptest I app diplay scale: 1.326694
2023-11-02 13:07:38.473 9715-9802 K3fAApi com.gaon.kakaomaptest V + e s(2.6.0, ae903e05, 6d1812236 1.326694, com.gaon.kakaomaptest)
2023-11-02 13:07:38.474 9715-9802 K3fCore com.gaon.kakaomaptest I DB multithreading mode set to SQLITE_CONFIG_SINGLETHREAD
2023-11-02 13:07:38.479 9715-9802 K3fCore com.gaon.kakaomaptest I DiskCache initialized
2023-11-02 13:07:38.479 9715-9802 K3fCore com.gaon.kakaomaptest I DownloadManager initialized
2023-11-02 13:07:38.501 9715-9802 K3fCore com.gaon.kakaomaptest I >>> Initialize appEngine[RELEASE]{1698898058}
2023-11-02 13:07:38.506 9715-9802 K3fCore com.gaon.kakaomaptest I >>> Start appEngine[RELEASE]{1698898058}
2023-11-02 13:07:38.507 9715-9802 K3fCore com.gaon.kakaomaptest I android high
2023-11-02 13:07:38.510 9715-9802 K3fCore com.gaon.kakaomaptest I DiskCache initialized
2023-11-02 13:07:38.512 9715-9802 K3fCore com.gaon.kakaomaptest I DownloadManager initialized
2023-11-02 13:07:38.512 9715-9802 K3fCore com.gaon.kakaomaptest I start to make a map view
2023-11-02 13:07:38.615 9715-9803 K3fAApi com.gaon.kakaomaptest V <-- {null=[HTTP/1.1 200 OK], Connection=[keep-alive], Content-Length=[0], Date=[Thu, 02 Nov 2023 04:07:38 GMT], X-Android-Received-Millis=[1698898058613], X-Android-Response-Source=[NETWORK 200], X-Android-Selected-Protocol=[http/1.1], X-Android-Sent-Millis=[1698898058587], X-Request-Id=[5c839960-7935-11ee-9f8c-6f6805fe3c7a]}
2023-11-02 13:07:38.662 9715-9802 K3fCore com.gaon.kakaomaptest I onRenderViewSuccess
2023-11-02 13:07:38.668 9715-9802 K3fAApi com.gaon.kakaomaptest V + e c (1080, 741, openmap)
2023-11-02 13:07:38.668 9715-9802 K3fCore com.gaon.kakaomaptest I Engine{1698898058} resumed.
2023-11-02 13:07:38.669 9715-9802 K3fAApi com.gaon.kakaomaptest V - allViewport(1080, 741)
2023-11-02 13:07:38.669 9715-9802 K3fCore com.gaon.kakaomaptest E unsupported image format.
2023-11-02 13:07:40.141 9715-9802 K3fCore com.gaon.kakaomaptest I Engine{1698898058} paused
2023-11-02 13:07:40.626 9715-9802 K3fCore com.gaon.kakaomaptest I Engine{1698898058} resumed.
2023-11-02 13:07:40.627 9715-9802 K3fAApi com.gaon.kakaomaptest V - allViewport(1080, 741)
2023-11-02 13:07:40.641 9715-9802 K3fCore com.gaon.kakaomaptest I Engine{1698898058} paused
2023-11-02 13:07:40.642 9715-9802 K3fCore com.gaon.kakaomaptest I Engine{1698898058} resumed.
2023-11-02 13:07:40.642 9715-9802 K3fAApi com.gaon.kakaomaptest V - allViewport(1080, 741)
추가로 위 로그 발생 후 뒤로가기 등 상호작용을 시도하면
2023-11-02 13:08:56.008 9715-9722 on.kakaomaptest com.gaon.kakaomaptest I Thread[5,tid=9722,WaitingInMainSignalCatcherLoop,Thread*=0xb4000076f6b1db20,peer=0x13600260,"Signal Catcher"]: reacting to signal 3
2023-11-02 13:08:56.008 9715-9722 on.kakaomaptest com.gaon.kakaomaptest I
2023-11-02 13:08:56.175 9715-9722 on.kakaomaptest com.gaon.kakaomaptest I Wrote stack traces to tombstoned
2023-11-02 13:08:59.772 2403-9913 ActivityManager system_server E ANR in com.gaon.kakaomaptest (com.gaon.kakaomaptest/.MainActivity)
PID: 9715
Reason: Input dispatching timed out (Application does not have a focused window)
확인 감사합니다. 동시성 뿐만 아니라 코루틴이나 쓰레드를 사용하더라도 View.GONE 대신 View.INVISIBLE 일 때는 ANR 이 발생하지 않는 등 일반적인 ANR 원인과는 좀 다른 부분이 있습니다. ANR 이 발생하지 않도록 우회하거나 방법을 찾아서 다음 버전에 배포하고 코멘트 드리도록 하겠습니다.