处理ACTION_VIEW时应用程序如何确定文件名?

时间:2012-02-15 19:14:16

标签: android android-intent

这是我发布的关于ACTION_SEND的另一个问题的后续内容:

How to specify filename for ACTION_SEND?

我现在发送一个ACTION_VIEW意图,打开一个查看器,查看我应用程序数据存储中的PDF文件。问题是查看器不显示文件的正确名称。我正在使用的URI是

内容://my.app.documentcontentprovider/123

其中123是文件的id。当ezPDF Reader呈现文件时,它将文件名显示为“/ 123”。当Quickoffice呈现它时,它将文件名显示为“Document1.pdf”。这两个应用程序都没有调用我的ContentProvider的query()方法来获取文件名。

然后我用GMail测试了同样的东西。 ezPDF Reader的行为方式相同。它将URI路径显示为文件名(“/ user@gmail.com/messages/123/attachments / ...”有趣的是,Quickoffice 确实显示正确的文件名,但我不知道在哪里如果没有调用ContentProvider.query(),它就会得到它。

如果有人建议将文件名传递给处理ACTION_VIEW的应用程序,我很乐意听到它们。我已经在我的ContentProvider中实现了query()并返回了MediaStore.MediaColumns.DISPLAY_NAME列的文件名。不确定还有什么可做的。

0 个答案:

没有答案