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

메모리 부족 강제 종료 시 아예 어플을 다시 시작하는 방법 있나요?

0 추천
안녕하세요?

안드로이드에서 메모리가 부족하여 어플이 강제 종료 되는 경우

어플을 다시 시작시키면 안에가 완전 꼬여서 Activity와 각각의 Fragment 의 생명 주기가

복잡하게 꼬여서 시작하던데

액티비티를 아예 처음부터 실행시키거나

이럴 경우 좋은 팁 있나요?

답변 부탁드립니다^^
LotsOD (160 포인트) 님이 2014년 4월 1일 질문
ActivityManager am = (ActivityManager)getSystemService(ACTIVITY_SERVICE);
MemoryInfo memoryInfo = new ActivityManager.MemoryInfo();
               
    finish();  // 평상시엔 그냥 종료
    if(memoryInfo.lowMemory){
        android.os.Process.killProcess(android.os.Process.myPid());
    }

low memory시 해당 app 종료 하구요..

onDestroy에..

Alarmmanger에 10초뒤에 App 실행되도록 등록시켜주는 될꺼 같은데요..

1개의 답변

+1 추천
매니페스트 파일에서 activity 태그의 launchMode를 singleTask로 설정하면 될지 모르겠네요.

 

그리고 어플이 강제 종료되고 나서 다시 실행되는 경우 정상적인 생명주기로 동작할 텐데요. 어떻게 생명주기가 꼬이는지, 구체적으로 어떤 현상이 발생하는지 궁금하네요.
방귀과장 (18,940 포인트) 님이 2014년 4월 1일 답변
...