Android получает путь к файлу из вложения электронной почты для вашего приложения БЕЗ сохранения на SD-карту

У меня есть приложение, в котором я использую фильтр намерений для обработки определенного расширения файла. Если пользователь получит электронное письмо с этим файлом в качестве расширения и нажмет «Просмотр», появится список программ, которые могут использовать этот файл. Мое приложение находится в этом списке, но я заметил, что не могу получить информацию из этого файла, если пользователь сначала не нажмет «сохранить», а затем «просмотреть» в своем приложении электронной почты.

Я проследил путь, который он возвращает, когда пользователь нажимает просмотр без сохранения, и он выглядит так:

/[email protected]/messages/140/attachments/0.1/BEST/false: false : false

Если они выберут сохранить, а затем просмотреть, это даст мне реальный путь, который я могу использовать:

/sdcard/download/file.xxx

Итак, мой вопрос: есть ли способ получить файл или содержимое файлов, когда пользователь выбирает «просмотр» и выбирает мое приложение, не сохраняя его сначала? Куда он помещает файл, когда вы нажимаете «просмотреть» вместо «сохранить» (извлечение вложения), и какой тип файла он сохраняет. Это конкретное расширение файла, которое я использую, — .xml.

РЕДАКТИРОВАНИЕ: я знаю, что другие программы по умолчанию могут это делать, поэтому это должно быть возможно. Я просто не уверен, как лучше всего это сделать.


person Nick    schedule 29.02.2012    source источник
comment
Удалось решить эту проблему? Если да, то не могли бы вы опубликовать свой ответ. Если нет, то я сталкивался с файлами tmp и заметил, что разработчик обычно сохраняет файлы tmp там, где считает нужным. Не в центральном каталоге tmp. Не сказать, что так у всех, но у некоторых. Группы Google обсуждают, где они сохраняют временные файлы. Android: где сохранять временные файлы?   -  person jnthnjns    schedule 22.06.2012
comment
Привет, Ник, ты смог решить эту проблему?   -  person Ahmed    schedule 12.03.2013