Как указать имя файла для ACTION_SEND?
Я использую ACTION_SEND для отправки файла от поставщика контента в моем приложении в качестве вложения электронной почты в GMail. Это прекрасно работает, за исключением того, что я не могу программно указать имя файла вложения. Когда мой URI
Содержание: //my.documentcontentprovider/321
Имя файла вложения - 321. 321 - идентификатор документа.
Я посмотрел на спецификацию Intent и не вижу клавиши EXTRA_ для указания имени файла. Единственный способ обойти это - добавить имя файла в мой URI:
Содержание: //my.documentcontentprovider/321/photo.jpg
Это должно сработать, но, кажется, немного хак Если у кого-то есть идея получше, пожалуйста, включите. Вот мой код, если он полезен
Intent sendDoc = new Intent();
sendDoc.setAction(Intent.ACTION_SEND);
sendDoc.putExtra(Intent.EXTRA_SUBJECT, doc.name);
sendDoc.putExtra(Intent.EXTRA_STREAM, DocumentContentProvider.getUri(doc.id));
sendDoc.setType(doc.contentType);
this.foldersFragment.startActivity(sendDoc);