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

작업관리자때문에 자동으로 종료된 어플리케이션의 메모리복구 가능한가요?

0 추천
안녕하세요. 새로이 안드로이드를 배우고있는 사람입니다.

LifeCycle과 같은 기본적인 아키텍쳐는 이해하고있습니다.

 

문제는 어플리케이션이 화면에서 사라졌을때 (Home키를 눌렀을때, 잠금버튼을 눌렀을때) 어플리케이션이 종료됩니다.

이는 OS의 디자인이니 어떻게 하지 못한다는걸 알고있습니다.

문제는 다시실행될경우인데, Activity가 다시 생성되기에, 변수들이 메모리에서 사라져서 NPE가 발생하고 어플리케이션이 종료됩니다.

 

질문 요약하면 이렇습니다.

1. 다시실행될때 이전상태를 호출하는 방법이 있나요? 없다면 보통 어플리케이션들에서는 어플리케이션이 죽었다가 다시 그 Activity부터 실행될경우 어떤방식으로 처리를하나요?
2. 찾다보니 시스템에 의해 종료되는경우 OnDestroy가 호출이되기도하고 안되기도 한다는 정보를 봤습니다. 이런경우는 어떻게 처리하시는지 궁금합니다.
 

답변해주시면 감사하겠습니다.
김영석 (230 포인트) 님이 2015년 10월 21일 질문

1개의 답변

+1 추천
 
채택된 답변
아래 링크를 살펴보시면 해답을 찾을 수 있을 것 같습니다.

http://developer.android.com/training/basics/activity-lifecycle/recreating.html
mcsong (44,040 포인트) 님이 2015년 10월 21일 답변
김영석님이 2015년 10월 21일 채택됨
답변감사합니다 ^^ 안드로이드가 생소해서 모르는게많네요 ㅠㅠ
링크를 보니 Bundle에 정보를 저장해서 다시 불러오는 상황인것같네요.

현재 문제가 발생하는 상황이 멤버변수로 선언해놓은 Dialog Class가 NPE가 뜨는데..
Object는 Bundle로 처리가 안되는것 같습니다.

막막하네요..
간단하게 Activity에서 onClose()등의 메서드가 불리면 Dialog를 dismiss나 close하시면 해결될 것 같네요.
오! 감사합니다. 그걸생각못하고있었네요
...