Как добавить расширение .pdf при отправке вложения с Android? - PullRequest
3 голосов
/ 23 сентября 2010

Я пытаюсь отправить PDF-файл в виде вложения из Android.Вот код:

String[] mailto = {"me@gmail.com"};
Uri uri = Uri.parse("android.resource://com.mywebsite.sendemail/raw/mypdf");

Intent emailIntent = new Intent(Intent.ACTION_SEND);
emailIntent.putExtra(Intent.EXTRA_EMAIL, mailto);
emailIntent.putExtra(Intent.EXTRA_SUBJECT, "My Subject");
emailIntent.putExtra(Intent.EXTRA_TEXT, "My Body");
emailIntent.setType("application/pdf");
emailIntent.putExtra(Intent.EXTRA_STREAM, uri);

startActivity(Intent.createChooser(emailIntent, "Send email using:"));

Теперь это работает, но проблема в том, что вложение называется mypdf вместо mypdf.pdf.Я не могу понять, как отправить его с его расширением ... Вот с чем мне нужна помощь.Спасибо.

Ответы [ 2 ]

2 голосов
/ 24 сентября 2010

Я не уверен, что то, что вы хотите, будет возможным, так как вы извлекаете PDF из ресурса. Если вы копируете PDF-файл в локальный файл (с правильным расширением) и отправляете его, вы должны получить расширение в полученном сообщении. Но прямо из ресурса ... Я подозреваю, что нет никакого способа добавить расширение.

1 голос
/ 10 декабря 2010

Всякий раз, когда я пытаюсь использовать методологию .putExtra, это всегда приводит к сбою приложения с сообщением «Принудительное закрытие».Если я использую что-то вроде: String mtUri = "mailto: somebody@gmail.com? Subject = Some Subject & body = Some text &";Намерение намерения = новое намерение (Intent.ACTION_SENDTO, Uri.parse (mtUri));startActivity (намерение);

Вроде нормально работает.У меня все еще есть проблема прикрепления файла, и я мог бы использовать некоторую справочную информацию для синтаксиса "attachment = file: /// ...".

Спасибо,

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...