«Очистить данные» также убивает приложение? - PullRequest
14 голосов
/ 01 марта 2012

Когда (в Gingerbread, 2.3.x) я нажимаю кнопку «Очистить данные» в Меню => Управление приложениями => Приложение, кнопка «Принудительное закрытие» также отключается.Означает ли это, что «Clear Data» также убивает приложение?

Кроме того, я заметил, что в Ice Cream Sandwich этого не происходит.Итак, как работает «Очистка данных» в Gingerbread и Ice Cream Sandwich?

Обновление : как сказал MisterSquonk , Froyo (2.2.x) ведет себя какТо же самое, что и ICS (4.x), это не отключает принудительное закрытие после очистки данных приложения.Кто-нибудь знает, почему поведение так отличается?Что это за ошибка в Gingerbread или какой-то временный эксперимент, который убил приложение вместе с очисткой его данных?

PS Не удалось создать тег «Gingerbread», недостаточно репутации :) PPS @MisterSquonk, спасибо заtag:)

Обновление 2 : также проверены Honeycomb (3.2), они также ведут себя так же, как Froyo и ICS.Только Gingerbread отключает принудительное закрытие после очистки данных.

Ответы [ 2 ]

14 голосов
/ 10 марта 2012

Очистить данные действительно убивает приложение, и всегда имеет.

«Force Stop» прошел через различные итерации значений. Раньше это означало просто убить все процессы и сервисы, и очистка данных также выполняла бы принудительную остановку. Были и более старые итерации платформы, которые были не так хороши, как выяснение, когда нужно отключить кнопку, поэтому, вероятно, вы видите, что она остается включенной в 2.2.

Однако в 3.2 я полагаю, что значение «Force Stop» меняется, чтобы привести приложение в состояние, при котором оно не сможет работать, пока пользователь не сделает что-то для его явного запуска (например, запуск из панели запуска, выбор это как метод ввода и т. д.). Когда это изменение было сделано, «Очистка данных» продолжала просто убивать процессы и останавливать его службы, поэтому приложение не было в состоянии полной остановки, поэтому кнопка остается активной.

0 голосов
/ 27 апреля 2012

да, когда вы нажимаете кнопку «Очистить данные» в Settings-->Applications-->Manage applications-->[MYApp] Нажмите MyApp. Нажмите кнопку «Очистить данные». Когда вы нажимаете кнопку «Очистить данные», данные будут стерты / удалены ..... очевидно, когда они будут удаленытогда приложение перейдет в принудительное закрытие

...