티스토리 뷰

300x250
300x250



Activity Result API 의 registerForActivityResult 사용 시 IllegalStateException 오류가 발생했다.

이번 포스팅에서는 해당 오류를 해결하는 방법에 대해 알아보자

[Android] - Activity Result API



Error message

java.lang.IllegalStateException:

LifecycleOwner XXX is attempting to register while current state is RESUMED.

LifecycleOwners must call register before they are STARTED.



Solution

해당 IllegalStateException registerForActivityResult 를 전역변수로 선언하지 않고 호출 시 발생한다.

하단과 같이 registerForActivityResult 를 전역변수로 선언하자.

 

✔️ 정정 : '지나가는 개발자' 님이 댓글로 알려주신 것 처럼 전역변수 선언이 문제가 아니고 초기화 시점의 문제였다.

'onCreate' or 'onStart' 에서 호출해야 한다.

 

◼ Before

 

◼ After



728x90
댓글