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

onDestroy()가 항상 실행된다는 보장이 없다면 이를 대체할 방법은 무엇이 있을까요?

0 추천
현재 startForeground 사용하여 죽지않는 어플 만들고 있습니다. 그런데 foreground를 사용하면 설정->실행중앱죽이기

하면 onDestroy()가 실행되지않고 그냥 죽어버립니다.(foreground를 안쓰면 onDestroy()가 실행 됨.)

만들고 있는 어플 특성상 foreground를 사용해야 하는데.. foreground를 쓰면서 어플이 죽을때 onDestroy()를 대체할 방법이 뭐가있을까요??
익명사용자 님이 2015년 5월 3일 질문

2개의 답변

0 추천
Activity context를 따로 저장 해 두고

 

어플이 죽었다는건 판단 하려면

 

미리 저장 해둔 Activity context가 유효한지 판단 하여 다시 살린다든지 하면 될 것으로 보입니다.
익명사용자 님이 2015년 5월 4일 답변
0 추천

ServiceDisconnected callback 함수를 사용하는 것이 가장 안전합니다.

예기치 못하게 해당 service가 죽었을 경우에 위의 callback 함수가 호출되게끔 되어 있습니다.

@Override
public void onServiceDisconnected(ComponentName name) {
// 이부분에다가 Service가 예기치 못하게 종료되는 경우에 처리할 코드를 넣으면 됩니다.
}
빅클라인 (4,520 포인트) 님이 2015년 5월 4일 답변
...