我正在尝试分享我之前保存在磁盘上的图像,发送一个Intent.ACTION_SEND
. 问题是我找不到与不同应用程序、官方 Gmail 应用程序和 TweetDeck 兼容的方法。
我要分享的图像包含在File
:
File agendaFile;
// its path using getAbsolutePath() -> /data/data/com.mypackage/files/agenda.jpg
选项 A) 使用 Uri.fromFile
Uri agendaUri = Uri.fromFile(agendaFile);
// the value -> file:///data/data/com.mypackage/files/agenda.jpg
结果
- Gmail,图片是否附加到电子邮件中?不
- Tweetdeck,图像是否添加到推文消息中?是的
选项 B) 使用 Uri.parse
Uri agendaUri = Uri.parse(agendaFile.toURI().toString());
// the value -> file:/data/data/com.mypackage/files/agenda.jpg
结果
- Gmail,图片是否附加到电子邮件中?是的
- Tweetdeck,图像是否添加到推文消息中?不
最后
在这两种情况下,我都会像这样发送意图:
final Intent intent = new Intent(android.content.Intent.ACTION_SEND);
intent.setType("image/jpg");
intent.putExtra(android.content.Intent.EXTRA_STREAM, agendaUri);
startActivity(Intent.createChooser(intent, "title"));
那么,是否还有其他选项可以共享图像?共享与大多数应用程序兼容的图像的最佳方式是什么?
谢谢!