Android Intent直接发送Stream

时间:2017-10-04 09:06:22

标签: android android-intent stream android-fileprovider

在我的Android应用中,我想从我的应用分享数据。这可能是任何随机数据,如我刚刚创建的图像。 目前我通过添加Extra

来做到这一点
intent.putExtra(Intent.EXTRA_STREAM, Uri.fromFile(file));

但这意味着我将URI暴露给Intent接收器。特别是对于Android API 24+,我必须实现这个丑陋的FileProvider。 由于我并不真的需要将数据存储在我的应用程序中(我只想通过电子邮件或文件浏览器进行共享)我希望只是直接发送数据。 " Intent.EXTRA_STREAM"建议直接发送流而不关心文件权限等。

所以我的问题是:

我可以直接从" app memory"发送(输出)流或数据。以某种方式

intent.putExtra(Intent.EXTRA_STREAM, myBitmap.getNiceOutputStream());

甚至直接

intent.putExtra(Intent.EXTRA_STREAM, myBitmap);

为了避免在本地存储文件并使用FileProviders?

---编辑---

看起来我可能会创建一个自定义ContentProvider直接从应用程序内共享数据,而不首先将其保存到文件中。 因此,任何指向该解决方案的帮助也将受到欢迎。

0 个答案:

没有答案