有没有办法选择使用存储访问框架打开的zip文件?

时间:2018-01-02 19:58:30

标签: android storage-access-framework

我有一个应用程序,允许用户通过CSV或包含多个文件的压缩包来导出和/或导入批量数据。

目前它使用第三方库(ar.com.daidalos.afiledialog),但我正在尝试迁移到存储访问框架,用户更容易熟悉(并且看起来更像“android -y“)。当前库不能使用Drive,这是我想添加的额外功能。

我已经开始工作,因此导出两种格式都有效。我可以选择使用以下文件阅读CSV文件:

Intent intent = new Intent();
intent.setAction(Intent.ACTION_OPEN_DOCUMENT);
intent.addCategory(Intent.CATEGORY_OPENABLE);
intent.setType("text/*");
startActivityForResult(intent,4);

但是当我将类型更改为“application / zip”(或任何更松散的东西)以便使zip可选时,文件选择器将zipfile视为另一个目录并显示其内容而不是选择它。看起来它正在响应.zip扩展名,因为当我从文件中删除它时,它可以选择(如果我无法正确解决这个问题,可能会给我一个解决方法)。

所以问题是,如何告诉选择者选择 zipfile而不是降序呢?我 使用zip文件,因为现有用户已经拥有以他们可能需要阅读的格式导出的数据。

1 个答案:

答案 0 :(得分:0)

如果将来有人遇到此问题,可供参考,由于CommonsWare的评论,这已被“解决”。这个问题似乎只发生在Genymotion模拟器上。在一个真实的设备上,它可以像我希望的那样工作。