Подтвердить что ты не робот

Android: где загружены загруженные файлы?

Я пытаюсь разработать "менеджер документов"

У меня есть необходимость доступа к файлам, загружаемым из Интернета, из Gmail, для других почтовых клиентов из других интернет-источников...

Я хотел бы понять , где эти файлы хранятся точно на Android:

1-, если есть SD

2- если нет SD-карты

чтобы я мог показывать их пользователю в моем приложении в любое время.

Любая помощь очень ценится.

4b9b3361

Ответ 1

Большинство устройств имеют некоторую форму эмулируемого хранилища. если они поддерживают SD-карты, они обычно устанавливаются на /sdcard (или некоторые варианты этого имени), которые обычно символически привязаны к каталогу в /storage, например /storage/sdcard0 или /storage/0, иногда эмулированное хранилище монтируется на /sdcard и фактический путь - это что-то вроде /storage/emulated/legacy. Вы должны иметь возможность использовать каталог загрузки. Лучше всего использовать вызовы api для получения каталогов. Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_DOWNLOADS);

Поскольку файловые системы и поддержка sdcard различаются между устройствами.

см. аналогичный вопрос для получения дополнительной информации как получить доступ к папке загрузки в android?

Обычно DownloadManager обрабатывает загрузки, и к ним обращаются файлы, запрашивая файл uri из диспетчера загрузки, используя идентификатор файла, чтобы получить место, где файлы были местами, которые обычно находятся где-то в sdcard/real или эмулируются, поскольку приложения могут читать только данные из определенных мест в файловой системе за пределами своего каталога данных, например, sdcard

Ответ 2

По моему опыту все файлы, которые я загрузил из internet,gmail, хранятся в

/sdcard/download

on ics

/sdcard/download

Вы можете получить к нему доступ, используя

Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_DOWNLOADS);