My Application загружает файл с сервера и сохраняет его в:
/mnt/sdcard/Android/data/com.test/files
. (карта/mnt/sdcard получена из Environment.getExternalStorageDirectory();
)
Каждый раз, когда я перераспределяю приложение из eclipse (меню запуска) в эмулятор, он удаляет файл.
Флажок "Целевые/стереть пользовательские данные" в конфигурации запуска не установлен.
Я закрываю все BufferedOutputStreams
правильно, поэтому я не думаю, что это мое приложение.
Я использую правильный каталог для постоянного хранения данных? (мои файлы около 70-100M)
Любые подсказки?
Из getExternalStorageDirectory doc:
Приложения не должны напрямую использовать этот каталог верхнего уровня, чтобы избегать загрязнения пользователем root Пространство имен. Любые файлы, которые являются частными к заявке следует каталог, возвращаемый Context.getExternalFilesDir, который система позаботится об удалении, если приложение удаляется. Другие общие файлы должны быть помещены в один каталогов, возвращаемых getExternalStoragePublicDirectory (String).
Ваш /mnt/sdcard/Android/data/com.test/files
должен быть в вашем Context.getExternalFilesDir()
, и он удаляется, когда приложение будет удалено.