Как очистить данные в случае сбоя приложения или ручного завершения?

-4

Когда я реализовал последнюю деятельность, возникло сомнение. Мои приложения хранят и получают некоторые значения из БД и SharedPreferences, поэтому можно ли их очистить, если мое приложение сбой или завершено?

С завершением я имею в виду, как тот, кто входит в "Настройки устройства" и вручную завершает приложение (или иным способом). Может быть, с помощью функции проверки фона?

РЕДАКТИРОВАТЬ - РЕШИТЬ сам

Просто обработка DefaultUncaughtExceptionHandler внутри Application onCreate:

Thread.setDefaultUncaughtExceptionHandler(new UncaughtExceptionHandler() {
@Override
public void uncaughtException(Thread thread, final Throwable ex) {
  // here i start a new Activity in which clean and handle what i need)
}
  • 0
    Я не понимаю, почему люди опускают пост, не говоря, почему .... Вопрос не полезен или не ясен?
  • 0
    Вы задаете вопрос без показа кода или объяснения того, что вы пробовали. На самом деле невозможно дать краткий ответ. Кроме того, вы, кажется, даже не тратите время на форматирование своего вопроса.
Показать ещё 1 комментарий
Теги:
sharedpreferences
crash
terminate

3 ответа

1
Лучший ответ

Я думаю, лучший способ - проверить данные "мусора", когда ваше приложение загрузится первым. ваше приложение не будет уведомлено о чем-либо еще, если оно сработает, или пользовательская сила закроет его.

  • 0
    Может быть, я плохо понимаю ваш совет. Я могу проверить данные мусора при загрузке приложения? Можете ли вы дать мне пример, пожалуйста?
  • 0
    это действительно зависит от данных, которые вы генерируете. Ps .: и я рассматриваю здесь постоянно хранящиеся данные (файлы, db, shared pref), если это просто данные RAM, сборщик мусора позаботится об этом, как отмечает @Rag
Показать ещё 1 комментарий
0

Удаление приложения приведет к удалению всех баз данных/файлов и т.д.

adb uninstall <package name>
  • 1
    Я думаю, что автор спрашивает, что происходит с данными, когда приложение завершается, а не как удалить приложение.
0

Если вы вручную завершаете приложение, сборщик мусора будет удалять все сохраненные значения временно.

  • 0
    Например ... моя SharedPreference не сбрасывается, если сбой или приложение завершено. Итак, поскольку я не могу захватить, когда это происходит, я не могу очистить файл SharedPreference с помощью reset ()
  • 0
    Вы можете использовать разрешение CLEAR_APP_CACHE для очистки

Ещё вопросы

Сообщество Overcoder
Наверх
Меню