Хранение изображений приложений во внутреннем хранилище по сравнению с внешним хранилищем

Я пишу приложение для Android, в котором конечный пользователь будет делать снимки. Обычно я храню данные приложения (стоимостью несколько КБ) во внутренней памяти. Но здесь эти картинки доходят до 450К каждая, и их может быть несколько.

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


person user1005585    schedule 08.02.2013    source источник
comment
У обоих есть компромиссы. Когда вы храните их во внутренней памяти, ваш apk-файл станет больше. С другой стороны, если вы храните их во внешнем хранилище, изображения в вашем приложении не будут отображаться в случае отсутствия подключения к Интернету. В конце концов, это ваше решение, вы решаете, какое из них для вас более критично.   -  person Can Geliş    schedule 09.02.2013


Ответы (1)


Это зависит от функциональности вашего приложения и от того, насколько большие изображения будут расти.

Хранение на внешнем хранилище лучше для экономии внутреннего хранилища, но вы должны знать, что внешнее хранилище не всегда доступно (например, когда USB подключен в режиме передачи файлов), поэтому вам нужно сначала проверить, смонтирован ли он, вот пример вспомогательной функции

public boolean isExternalStorageMounted() {
    String state = Environment.getExternalStorageState();
    if (Environment.MEDIA_MOUNTED.equals(state)) {
        return true;
    }
    return false;
}

Кроме того, вам следует избегать создания независимой папки на SD-карте, если вы хотите, чтобы ваши файлы были удалены при удалении приложения, вы должны использовать getExternalFilesDir() в своем каталоге, где вы можете сохранять изображения, которые будут удалены при удалении вашего приложения. .

person iTech    schedule 08.02.2013