마스터Q&A 안드로이드는 안드로이드 개발자들의 질문과 답변을 위한 지식 커뮤니티 사이트입니다. 안드로이드펍에서 운영하고 있습니다. [사용법, 운영진]

액티비티생명주기 onDestroy백업 ->onCreate복원 질문입니다.

0 추천
OnPause상태에서 bundle객체에 백업을 한후, (onSaveInstance 메소드도 동시에 써봤음)

어플을 뒤로가기 키로 destroy 시킨후 , 다시 어플을 실행시켜서 onCreate로 진입하게 했는데요.

onCreate의 savedInstance가 null값이 나오네요. 전달이 안되는것같아요

그래서 onRestoreInstanceState 메소드도 사용해봤는데... 매개변수로 들어오는 번들객체가 없네요 .

계속 데이터 복구가 안되고있어요 ㅠㅠ  블로그 다 뒤져보니 된다고 나와있던데

예시들이 거의다 그냥 onpause상태에서 다시 onresume으로 재진입하는경우만 있더라구요

혹시 어떻게해야 ondestroy후에,  어플을 다시 실행시켜 OnCreate에서 백업객체를 받을수 있을까요?
jmw93 (120 포인트) 님이 2019년 7월 13일 질문

1개의 답변

0 추천
onDestroy에서 onCreate로 넘어갈 수 없는 것으로 아네요.

onDestroy한 후 새로 실행하면서 onCreate로 진입하는거 아닌가요?

그렇게 되면 저장된 데이터를 전달 못 받을거 같아요.

DB같은걸 쓰셔서 쓰고 읽고 하셔야 할 것 같습니다.
rhaps20 (5,710 포인트) 님이 2019년 7월 13일 답변
아닙니다. 여러가지 테스트를 해본결과, 화면을 가로로 전환했을때 호출되는 onDestroy에서는, oncreate 함수로 bundle객체가 전달이 됩니다.
정상적으로 데이터복구테스트를 해보았습니다.
다만  제질문사항인, 하드웨어의 백키를 눌렀을때 호출되는 ondestroy는 뭔가 성질이 좀 다른것같네요..
...