我将应用中的一些对象保存为具有自定义文件扩展名 (.xyz) 的文件,这些文件可以保存到其他应用中。现在,例如,一旦我在 Dropbox 上有这样一个文件并尝试导出它,它应该会显示我的应用程序。现在让它显示我的应用程序的唯一方法是让它接受任何 mime 类型,例如:
<data android:mimeType="*/*"/>
如何让我的应用仅在文件以 .xyz 结尾时才成为一个选项?
最佳答案
这在一般情况下是不可能的。
如果文件扩展名对应于众所周知的 MIME 类型(例如,MimeTypeMap
知道它),您可以修改您的 android:mimeType
以使用该 MIME 类型。
但是由于 Uri
被打包到 Intent
中的方式(作为一个额外的,而不是作为“数据”的一部分)。另外,更多时候,你会得到一个content
Uri
,而不是一个file
Uri
,和一个 content
Uri
可能甚至没有文件扩展名,更不用说正确的了。
关于android - 使应用仅支持自定义文件扩展名的 action_send,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41625329/