2012-04-25 4 views
2

애플리케이션이 닫히지 않게하는 방법이 있습니까? OnDestroy에서이 작업을 수행 할 수 있습니까?안드로이드 애플리케이션이 닫히거나 멈추는 것을 방지하십시오.

+0

@raju 나는 그가 사용자가이를 종료하려고 할 때 그가 닫는 것을 방지 할 수 있습니다 의미합니다 생각합니다. – dymmeh

+0

알았어 ... "응용 프로그램이 닫히는 것을 막을 수있는 방법"을 읽으십시오 ... – 5hssba

답변

4

귀하의 질문이 귀하의 응용 프로그램이 폐업되는 것을 막을 수있는 곳이면 가능하지 않습니다. 시스템은 자원이 부족하거나 사용자가 작업 킬러 또는 ICS의 통합 시스템을 통해 실행될 때 닫을 수있는 권한이 있습니다.

OnDestroy에서 알림을 보내면 애플리케이션을 "다시 활성화"할 수 없습니다. 귀하의 질문이 무엇인지

+0

예를 들어, 삼성이나 구글은 어떻게합니까? 초기 설정 GUI를 닫을 수 없으면 홈 버튼이 작동하지 않습니다. – Mustafa

+0

Samsung과 Google은 내부 API에 액세스 할 수 있으며 기본적으로 원하는 모든 것을 할 수 있습니다. 이 경우 해당 애플리케이션을 참조로 간주해서는 안됩니다. – azertiti

3

리소스가 부족 해지면 커널이 강제로 종료 될 수 있으므로 응용 프로그램을 닫을 수 없습니다. 일반적으로 시스템의 리소스가 부족하면 커널은 응용 프로그램에 리소스를 닫으 려 함을 알립니다. 응용 프로그램에서 해당 onDestroy 메서드를 실행 한 다음 닫습니다.

onDestroy 메서드는 상태를 저장하는 데 유용 할 수 있습니다. 여기에 해골 예는 다음과 같습니다

protected void onDestroy() {   
    super.onDestroy(); 
    //state is saved here. 
} 

그러나, 당신이 onDestroy()가 실행 보장하지 않는 것을 기억 가치가있다. 커널은 그렇게 할 시간을 줄 수도하지 않을 수도 있습니다. 추가 정보는 Activity Life Cycle을 확인하십시오.

+1

[커널] (http://developer.android.com/images/system-architecture .jpg) ActivityManager : – zapl

2

확실하지, 거 해석을 시도하고 나는 이것이 당신이 필요하다고 생각 :

당신이 당신의 응용 프로그램이 포 그라운드를 생성, 그것은 응용 프로그램 상태에 관계없이 실행중인 프로세스를 계속하려면 대신 프로세스를 실행할 서비스를 제공하고 필요할 때 응용 프로그램에 바인드 할 수 있습니다.

http://developer.android.com/reference/android/app/Service.html