gpt4 book ai didi

android - 如何为 ACTION_SEND 指定文件名?

转载 作者:行者123 更新时间:2023-11-29 14:01:57 27 4
gpt4 key购买 nike

我正在使用 ACTION_SEND 从我的应用中的内容提供商发送文件作为 GMail 中的电子邮件附件。这很好用,只是我无法以编程方式指定附件的文件名。当我的 URI 是

content://my.documentcontentprovider/321

附件的文件名是321,321是文档id。

我查看了 Intent 的规范,没有看到用于指定文件名的 EXTRA_ 键。我能想到的唯一解决方法是将文件名附加到我的 URI:

content://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);

最佳答案

您需要将文件路径作为 Intent.EXTRA_STREAM 传递。精心设计的 ContentProvider 在 _DATA 列中公开文件路径。

关于android - 如何为 ACTION_SEND 指定文件名?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9089494/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com