Android: сохранить файл навсегда (даже после очистки данных / удаления) - PullRequest
6 голосов
/ 24 мая 2011

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

Я также знаю, что могу сохранять данные на SD-карте, но что, если на устройстве нет SD-карты / SD-карта отключена?

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

Ответы [ 2 ]

13 голосов
/ 24 мая 2011

Вы не должны этого делать, вы не должны заставлять пользователей хранить данные на своих телефонах без их согласия.

В любом случае, каталог данных приложения будет удален после удаления, но НЕ после обновления

Единственный способ иметь постоянные данные - это использовать SD-карту, но, опять же, пользователи не захотят хранить данные на своей карте после удаления приложения

Или вы можете рассмотреть:

  1. Хранение данных на удаленном сервере с некоторой аутентификацией для их извлечения
  2. Использование Резервное копирование данных Сервис
1 голос
/ 24 мая 2011

Environment.getDataDirectory() - это как минимум один каталог, в котором вы можете сохранять файлы.Он находится на внутреннем хранилище (/data).

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

...