Открытие вложенных файлов из gmail

Ответить
Аватара пользователя
klblk
Сообщения: 1097
Зарегистрирован: 18 окт 2012, 11:17
Откуда: г. Красноярск

Открытие вложенных файлов из gmail

Сообщение klblk » 04 июн 2013, 13:56

Дано: Моё приложение работает с определенным типом файлов (неважно каким пусть будет .abc). Эти файлы привязаны к письму. При открытии письма в приложении gmail и клике на вложенный файл он должен скачиваться и кушаться моим приложением.

Что получилось: Файл скачивается и моё приложение его кушает, но uri при использовании getData я получаю какое-то странное. А именно вместо пути к файлу, который я рассчитывал получить при вызове uri.toString(), я получаю строчку вида "content://gmail-ls/messages/xxxxxxgmail.com/4/attachments/0.1/BEST/false". Что с ней делать я не знаю.

Что нагуглил:
1) http://stackoverflow.com/questions/6031 ... -gmail-app - этот пример помог мне получить только имя файла, но в принципе, зная имя файла и то что gmail по умолчанию сохраняет файл в папку download, я могу получить полный путь к файлу. Но есть одно "но": приложения падает, жалуясь на отсутствие "com.google.android.gm.permission.READ_GMAIL or com.google.android.gm.permission.WRITE_GMAIL" в строчке Cursor c = getContentResolver().query(theIntent.getData(), null, null, null, null). Причём сейчас эти разрешения получить уже нельзя (http://productforums.google.com/d/msg/g ... wuZl0Rl68J). Но опять же "но", при повторном клике на это же вложение этот код срабатывает нормально и я получаю имя файла (тут пока что непонятная для меня магия).

2) Есть приложение которое скачивает файлы с gmail (https://play.google.com/store/apps/deta ... ZlaXQiXQ..), следовательно думаю моя задача решаема.

Ответить