Jetpack Compose + Navigation Animation + 카카오맵 V2 사용 시 앱이 완전히 멈춰버리는 증상 문의

안녕하세요.

현재 개발 중인 안드로이드 애플리케이션에서 카카오맵 V1 → V2로 마이그레이션을 진행하고 있습니다. 특이사항으로 UI 툴킷으로 XML이 아닌 Jetpack Compose 를 사용하고 있습니다.

다른 기능은 모두 정상 작동되나, 애니메이션과 함께 카카오맵 이동 후 하단 시스템 바의 홈 버튼을 눌러 홈 화면에 갔다가, 다시 해당 앱으로 이동했을 때 앱 자체가 완전히 멈춰버리는 증상이 발생합니다.

어떠한 클릭도 되지 않고, 어떠한 로그도 출력되지 않습니다. 앱 내에서 사용자 클릭 자체를 인지하지 못해 ANR도 발생하지 않습니다. (카카오맵 V1을 사용할 때는 같은 상황에서도 정상적으로 동작하였습니다.)

한 가지 의문인 점은 애니메이션을 넣지 않으면 정상적으로 동작한다는 점입니다. 제 추측으로는 처음 화면 진입 시 레이아웃이 온전히 그려지지 않은 상황임에도 카카오맵을 그리려다가, 그 과정에서 어떠한 오류가 발생한 것이 아닌가 싶긴 합니다…

번거로우시겠지만 예제 프로젝트를 추가로 첨부드리오니, 검토 부탁드립니다.

감사합니다.

kakaomaptest.zip (4.1 MB)

우선, 올려주신 예제 프로젝트를 실행해서 시나리오 대로 테스트를 해봤는데 문제상황이 재현되지 않아서 어떤 문제인지 파악이 어려운데요. (테스트 디바이스: Galaxy Z Flip3 5G/안드로이드 버전14) - 테스트했던 영상 첨부합니다.

  • 혹시, 어떤 디바이스/안드로이드 버전으로 테스트하셨을까요? (에뮬레이터 실행 여부 등)
  • 지도가 안움직였던 시나리오에서 “k3f” 필터로 로그캣 내용도 첨부해주시면 좋을 것 같습니다.

테스트 디바이스로 Galaxy Quantum4 (SM-A456S / 안드로이드 버전 13) 를 사용하였습니다. “k3f” 로 필터링된 로그캣 내용과, 테스트 영상도 함께 첨부드립니다.

2024-05-29 16:20:48.531 27424-27472 K3fAApi                 com.gaon.kakaomaptest                D  ---> RequestHeader(https://dapi.kakao.com/v2/maps/vector/auth) {Accept=[application/json], Authorization=[API_KEY], KA=[sdk/13 mapSdk/2.11.1 os/android-33 lang/ko-KR device/SM-A546S origin/lZ8bHI+w3XYXbhZO+Ocri3S/kXo= android_pkg/com.gaon.kakaomaptest]}
2024-05-29 16:20:48.675 27424-27471 K3fAApi                 com.gaon.kakaomaptest                D  AppSpec : High spec
2024-05-29 16:20:48.675 27424-27471 K3fCore                 com.gaon.kakaomaptest                I  app diplay scale: 1.254981
2024-05-29 16:20:48.675 27424-27471 K3fAApi                 com.gaon.kakaomaptest                V  + e s(2.11.1, c8e4099d, 7157673c4 1.254981, com.gaon.kakaomaptest)
2024-05-29 16:20:48.687 27424-27471 K3fCore                 com.gaon.kakaomaptest                I  DownloadManager initialized
2024-05-29 16:20:48.706 27424-27471 K3fCore                 com.gaon.kakaomaptest                I  >>> Initialize appEngine[RELEASE]{1716967248}
2024-05-29 16:20:48.707 27424-27471 K3fCore                 com.gaon.kakaomaptest                I  >>> Start appEngine[RELEASE]{1716967248}
2024-05-29 16:20:48.707 27424-27471 K3fCore                 com.gaon.kakaomaptest                I  android high
2024-05-29 16:20:48.716 27424-27471 K3fCore                 com.gaon.kakaomaptest                I  DownloadManager initialized
2024-05-29 16:20:48.717 27424-27471 K3fCore                 com.gaon.kakaomaptest                I  start to make a map view
2024-05-29 16:20:48.718 27424-27471 K3fAApi                 com.gaon.kakaomaptest                V  + e c (1080, 1967, openmap)
2024-05-29 16:20:48.718 27424-27471 K3fCore                 com.gaon.kakaomaptest                I  Engine{1716967248} resumed.
2024-05-29 16:20:48.719 27424-27471 K3fAApi                 com.gaon.kakaomaptest                V  - allViewport(1080, 1967)
2024-05-29 16:20:48.735 27424-27471 K3fCore                 com.gaon.kakaomaptest                I  onRenderViewSuccess
2024-05-29 16:20:48.742 27424-27471 K3fCore                 com.gaon.kakaomaptest                E  unsupported image format.
2024-05-29 16:20:48.969 27424-27472 K3fAApi                 com.gaon.kakaomaptest                V  <-- {null=[HTTP/1.1 200 OK], Connection=[keep-alive], Content-Length=[0], Date=[Wed, 29 May 2024 07:20:48 GMT], X-Android-Received-Millis=[1716967248967], X-Android-Response-Source=[NETWORK 200], X-Android-Selected-Protocol=[http/1.1], X-Android-Sent-Millis=[1716967248942], X-Request-Id=[1517e4b9632f51a865bbe660518ade3a]}
2024-05-29 16:20:50.195 27424-27471 K3fCore                 com.gaon.kakaomaptest                I  Engine{1716967248} paused
2024-05-29 16:20:50.780 27424-27471 K3fCore                 com.gaon.kakaomaptest                I  Engine{1716967248} resumed.
2024-05-29 16:20:50.780 27424-27471 K3fAApi                 com.gaon.kakaomaptest                V  - allViewport(1080, 1967)
2024-05-29 16:20:50.830 27424-27471 K3fCore                 com.gaon.kakaomaptest                I  Engine{1716967248} paused
2024-05-29 16:20:50.831 27424-27471 K3fCore                 com.gaon.kakaomaptest                I  Engine{1716967248} resumed.
2024-05-29 16:20:50.831 27424-27471 K3fAApi                 com.gaon.kakaomaptest                V  - allViewport(1080, 1967)
  • 혹시, “k3f” 필터링 된 것 외 다른 에러로그는 없었나요?
  • 갤럭시 퀀텀4 기기를 빠르게 구하기 어려울 것 같아, 혹시 다른 기기에서도 똑같이 재현되는지 확인 부탁 드립니다.
  • “k3f” 외의 에러 로그는 제 눈에는 보이지 않네요 :cry:
  • 갤럭시 퀀텀 4 외의 기기들로 추가 테스트를 진행해보니 아래와 같은 결과가 나오네요.
    • 갤럭시S24 (SM-S921N, 안드로이드 14) → 정상 작동
    • 갤럭시 Z 플립 5(SM-F731N, 안드로이드 14) → 정상 작동
    • 갤럭시 Z 폴드 3 5G(SM-F926N, 안드로이드 13) → 펼친 상황, 접힌 상황 모두 오류 발생

안드로이드 13 버전에서 오류가 발생하는걸까요? :thinking:
갤럭시 Z 폴드 3 5G 테스트 영상도 추가 첨부드립니다.

현재까지 여러기기에서 아래와 같이 테스트 해봤습니다. 현상만 놓고 보면, 1. Jetpack Compose 의 enterTranstion 사용 시 2. 안드로이드버전 13 이하 에서 발생하는 걸로 보입니다.

특별한 로그가 없고 특정 버전에서만 발생하는 걸로 추정되어, 안드로이드 버전이나 제조사의 펌웨어 업데이트가 필요한 이슈일 수 있습니다. 때문에, 추가적인 조사가 필요하고, 확인이 될 때까지 해당 이슈는 다른 방법으로 우회하셔야 할 것 같습니다. 추후, 확인이 되면 댓글로 알려드리겠습니다. 감사합니다.

테스트 기기들: 
 * 갤럭시 Z 플립3 (안드로이드13) → 비정상
 * 갤럭시 Z 플립3 (안드로이드14) → 정상
 * 갤럭시 Z 플립5 (안드로이드14) → 정상
 * 갤럭시 Z 폴드2 (안드로이드13) → 비정상
 * 갤럭시 Z 폴드3 (안드로이드14) → 정상
1개의 좋아요