Есть приложение на подобии галлереи, внутри есть хмл файл с которого беруться данные, я его распарсил и когда начинается активити то идёт проигрывание музыкального файла полученного по ссылке которая содержиться в хмл файле. Я добавил кнопку для отправки письма который аттачит данный файл который проигрывается, но хотя в почтовом клиенте и отображается что файл аттачится, но по факту присылается только тело письма с темой, без аттача.
http://i.imgur.com/L81vB9b.png
Может кто то сможет подсказать что именно я делаю не так? Или в какую сторону нужно искать\ работать?
Вот код активити которое это делает: http://pastebin.com/uzdJYxab
А если быть точным вот код моей кнопки которая отвечает за всё вышесказанное
Код: Выделить всё
sendEmail_button.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
Intent intent = new Intent(Intent.ACTION_SEND_MULTIPLE);
intent.setType("*/*");
intent.putExtra(Intent.EXTRA_SUBJECT, "Attachment from app");
intent.putExtra(Intent.EXTRA_TEXT, "Sending mp3 file " + title);
intent.putExtra(Intent.EXTRA_EMAIL, new String[] {"some_email@email.com"});
ArrayList<Uri> uris = new ArrayList<Uri>();
uris.add(Uri.fromFile(new File(trackUrl)));
intent.putParcelableArrayListExtra(Intent.EXTRA_STREAM, uris);
startActivity(Intent.createChooser(intent, "Send mail"));
}
}); Возможно есть какой то способ чтобы приаттачить аудио файл полученный по ссылке в intent? Мне нужно пользоваться intent.putParcelableArrayListExtra(Intent.EXTRA_STREAM, uri); как частью моего задания, однако я не реализовал другую часть, а именно:
Означает ли это что только Content Provider может получить файл по ссылке и вложить его в письмо? Я очень много искал но не нашёл четкого алгоритма переопределения public ParcelFileDescriptor openFile(Uri uri, String mode), возможно у кого то был опыт работы с данным методом и он может мне указать правильное направление? Я не прошу чтобы за меня это решили, просто что бы хотя бы указали на возможные ошибки и дали совет.ACTION_SEND_MULTIPLE would use external activity which should access sound file. To allow such access you need: - Create ContentProvider. - Override public ParcelFileDescriptor openFile(Uri uri, String mode)