Android-эмулятор / eclipse удаляет файлы приложения при повторном развертывании

1

My Application загружает файл с сервера и сохраняет его в: /mnt/sdcard/Android/data/com.test/files. (карта/mnt/sdcard получена из Environment.getExternalStorageDirectory();)

Каждый раз, когда я перераспределяю приложение из eclipse (меню запуска) в эмулятор, он удаляет файл. Флажок "Целевые/стереть пользовательские данные" в конфигурации запуска не установлен. Я закрываю все BufferedOutputStreams правильно, поэтому я не думаю, что это мое приложение. Я использую правильный каталог для постоянного хранения данных? (мои файлы около 70-100M)

Любые подсказки?

  • 0
    com.test ваше имя пакета приложения, верно? может быть, другое местоположение SDcard .. файлы помечены как читаемые для всех или только для приложения?
Теги:
emulation

1 ответ

1

Из getExternalStorageDirectory doc:

Приложения не должны напрямую использовать этот каталог верхнего уровня, чтобы избегать загрязнения пользователем root Пространство имен. Любые файлы, которые являются частными к заявке следует каталог, возвращаемый Context.getExternalFilesDir, который система позаботится об удалении, если приложение удаляется. Другие общие файлы должны быть помещены в один каталогов, возвращаемых getExternalStoragePublicDirectory (String).

Ваш /mnt/sdcard/Android/data/com.test/files должен быть в вашем Context.getExternalFilesDir(), и он удаляется, когда приложение будет удалено.

Ещё вопросы

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