我有一个需要向用户询问文件的应用程序。我通过使用Intent.ACTION_GET_CONTENT
操作和"file/*"
MIME类型的意图启动活动来实现此目的。
它在早于4.4版本的Android版本上运行良好。系统显示已安装文件管理器的列表,我选择文件后,我的应用会获得"file://"
网址。
当我在KitKat上运行应用程序时出现问题。当应用程序想要在KitKat上打开文件时,会出现新的内置文件选择器。它列出了打开文件的各种来源,例如“下载”等。但是所有文件都是灰色的。我无法打开它们。好的,当我将MIME类型更改为"*/*"
时,它允许我打开相同的文件。然后我打开一个文件,我的应用程序收到一个"content://"
样式的URL。
我知道如何从这些网址中读取数据,但很难重写整个应用程序以支持它。它是一个很大的,用于处理文件。
有没有办法在Intent
中严格定义我想要"file://"
网址?
或者有没有办法阻止KitKat使用新的文件选择器框架?有没有办法让它以与早期版本相同的方式工作?
如果不在应用中实施“content://”风格的网址支持,是否可以解决此问题?可能这将是最清晰的解决方案......
提前致谢!