안드로이드/에러

[Android] Fragment 에서 ActivityResultLauncher 사용시 앱 죽는 문제

코딩하는후운 2022. 12. 6. 18:30
반응형

ActivityResultLauncher 사용시 앱 죽는 문제

You must ensure the ActivityResultLauncher is registered before calling launch

가 발생하면서 앱이 죽는 이슈가 생겼다.

# 상황

뷰페이저 - [홈], [죽는화면], [다른 화면], [다른 화면2]
[죽는 화면]에서 첫 진입시 ActivityResultLauncher를 통해 가이드 화면으로 이동 시켜주어야 함.

[다른화면2] -> [죽는화면]으로 이동시 앱 죽음. 
= 아마 [다른화면2] 갔을 때 [죽는화면]이 destroy되고 ActivityResultLauncher가 초기화 되지 않아서 죽는 것 같다.

 

# 해결

onDestroy()에
ActivityResultLauncher 변수를 null로 초기화 해주었다.

launcher = null

 

onStart나 onCreate에 넣으라는 얘기도 있었지만 뷰페이저라 바로 화면이동이 되어 onDestroy에 null로 초기화 하는 방향으로 수정하였습니다.

 

참조 :
https://stackoverflow.com/questions/70211364/attempting-to-launch-an-unregistered-activityresultlauncher

https://parkho79.tistory.com/166

반응형