14

언제 (진저 브레드, 인 2.3.x에서) 나는 =>하는 "강제 닫기"버튼도 사용할 수 없게됩니다 어플 => 응용 프로그램을 관리 메뉴에서 '데이터 지우기'버튼을 누르십시오. "데이터 지우기"도 앱을 죽인다는 의미입니까?"데이터 지우기"로 앱도 종료됩니까?

또한, 나는 아이스크림 샌드위치이 발생하지 않는 것으로 나타났습니다. 그래서 진저 브레드와 아이스크림 샌드위치간에 "데이터 지우기"작동 방식이 다릅니다.

업데이트 : MisterSquonk 말했듯이, 프로 요 (2.2.x 이상)은 ICS (4.x의)와 같은 방식으로 동작, 즉 응용 프로그램의 사용자 데이터를 삭제 한 후 강제 닫기를 해제하지 않는 것입니다. 누구나 행동이 왜 그렇게 다른지 알고 있습니까? 진저 브레드 (Gingerbread)의 버그, 또는 임시 실험을 통해 데이터를 지우면서 앱을 죽인 것은 무엇입니까?

P. 충분한 진실이 아닌 "진저 브레드"태그를 만들 수 없습니다 :) P.P.S. @ MristerSquonk, 태그 주셔서 감사합니다 :

업데이트 2 : Checked Honeycomb (3.2) 또한 ICS와 같은 Froyo와 동일한 방식으로 작동합니다. 진저 브레드는 데이터를 지운 후에 강제 닫기를 사용 중지합니다.

+1

잘 발견했다. Logically Clear Data는 앱을 종료해야하므로 ICS의 버그 일 수 있습니다. 물론 ICS가 일종의 알림을 앱에 전송하지 않는 한, 프로그래머가 걱정할 필요가 있습니다. –

+0

@PhilipSheard 감사합니다. 따라서 Clear Data를 클릭 한 후 응용 프로그램이 Force Close를 눌렀을 때처럼 살해되었다고 가정하는 것이 안전합니까? – stansult

+1

글쎄요, 그냥 추측하고 있지만 일어난 일이 없다면 어리석은 짓일까요? 나는 단지 합리적으로 여기에서 생각하려고 노력하고있다. 나는 이것에 대한 내부 지식이 없다. –

답변

13

데이터 지우기는 앱을 종료하며 항상 발생합니다.

"강제 정지"는 의미의 다양한 반복을 거쳤습니다. 그것은 단지 모든 프로세스와 서비스를 죽이는 것을 의미 했었습니다. 그리고 데이터를 지우는 것도 강제 중지와 똑같이 할 것입니다. 또한 플랫폼을 오래 전에 반복하여 버튼을 비활성화해야하는 것을 파악하는 것만 큼 좋지 않았습니다. 2.2에서 계속 활성화 된 것을 볼 수 있습니다.

그러나 3.2에서는 "강제 종료"의 의미가 사용자가 명시 적으로 시작하기 전까지는 실행할 수없는 상태로 응용 프로그램을 변경한다고 생각합니다 (예 : 시작 프로그램에서 시작, 입력 방법으로 선택하는 등). 이 변경이 이루어지면 "데이터 지우기"가 계속해서 프로세스를 중지하고 서비스를 중지하므로 앱이 완전히 중지 된 상태가 아니므로 버튼이 계속 사용할 수 있습니다.

+0

@hackbog, 감사합니다! 그것이 사실이라면 말이됩니다. 이것에 관해 읽을만한 자료를 알고 있습니까? (정의 변경 강제 종료)? – stansult

+1

답변을 받아 들여야합니다. :) 매우 통찰력. –

+0

방금 ​​"데이터 지우기"가 앱을 죽이지 않는지 확인했습니다. 'onDestroy()'는 실행중인 모든 액티비티에서 ** not ** 호출된다는 것에주의하십시오. – ThomasW

0

그래, 당신이 Settings-->Applications-->Manage applications-->[MYApp]에 ClearData 버튼을 클릭하면 은/데이터가 우리가 삭제됩니다 후 데이터 지우기 버튼을 클릭 삭제하면 때 삭제 MyApp를이 .. 분명히 ..... 를 데이터 지우기 버튼 을 클릭 탭 데이터 다음 응용 프로그램은 강제로 닫습니다