хранение данных приложения андроида по SD-карте

Существует ли способ сохранить данные приложения андроида по SD-карте вместо во внутренней памяти? Я знаю, как передать приложение sqlite база данных от внутренней памяти до SDCard, но что, если внутренняя память становится полной во-первых? Как все обрабатывают это?

30
задан Jeff Axelrod 22 August 2012 в 18:22
поделиться

3 ответа

Предупреждение: Этот ответ устарел. Вы должны использовать Environment.getExternalStorageDirectory () , чтобы получить корневой путь к SD-карте, как указано в ответах ниже.

Старый ответ, поэтому комментарии по этому поводу имеют смысл:

Добавление / sdcard / в корень, ваш путь должен направить ваше Android-приложение на использование SD-карты (по крайней мере, это работает с G1). Объекты файловой системы Android дают вам возможность проверять размеры файлов ... поэтому должно быть возможно (если это сложно) написать некоторый код аварийного переключения. Этот код изменит ваш корневой путь, если внутренняя память заполнится.

9
ответ дан 27 November 2019 в 22:57
поделиться

Проблема с использованием SDCard заключается в том, что вы не можете с уверенностью предполагать, что она будет присутствовать всегда, когда она понадобится вашему приложению. С внутренней памятью дело обстоит иначе. Если ваше приложение не использует эти данные для запуска, все будет в порядке.

2
ответ дан 27 November 2019 в 22:57
поделиться

Лучше использовать Environment.getExternalStorageDirectory(), чем жесткий код "/sdcard". Не всегда можно быть уверенным, что имя папки будет так называться. Также класс Environment предлагает метод getExternalStorageState() для проверки доступности внешнего хранилища.

76
ответ дан 27 November 2019 в 22:57
поделиться
Другие вопросы по тегам:

Похожие вопросы: