Android Zip文件意图选择器在ActivityResult上返回(数据=null)

Android Zip文件意图选择器在ActivityResult上返回(数据=null),android,android-fragments,android-intent,Android,Android Fragments,Android Intent,我需要打开一个文件选择器,让用户选择一个zip文件。用户选择zip文件后,onActivityResult返回data=null。我不确定我做错了什么 Intent intent = new Intent(Intent.ACTION_GET_CONTENT); intent.setType("application/zip"); startActivityForResult(intent, SELECT_ZIP_FILE); 我试着寻找其他问题,

我需要打开一个文件选择器,让用户选择一个zip文件。用户选择zip文件后,onActivityResult返回data=null。我不确定我做错了什么

        Intent intent = new Intent(Intent.ACTION_GET_CONTENT);
        intent.setType("application/zip");
        startActivityForResult(intent, SELECT_ZIP_FILE);
我试着寻找其他问题,并发现这是解决方案之一。这也不管用

    Intent intent = new Intent(Intent.ACTION_GET_CONTENT);
    if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) {
      intent.addCategory(Intent.CATEGORY_OPENABLE);
      intent.setType("*/*");
      String[] mimetypes = {"application/zip", "text/plain"};
      intent.putExtra(Intent.EXTRA_MIME_TYPES, mimetypes);
    } else {
      intent.setType("application/zip");
    }
    startActivityForResult(intent, SELECT_ZIP_FILE);
在此方面的任何帮助都将不胜感激


注意:如果我使用setType(“*/*”)而不提及MIME_类型,我可以打开任何文件,但不能打开zip文件。我拥有清单中提到的适当权限。

如果
操作获取内容
请求将
结果确定
返回到
活动结果()
,并且您没有获得所选内容的
Uri
,则无论处理
操作获取内容
请求的内容如何,都存在错误。不幸的是,除了让用户知道他们选择了一个有缺陷的应用程序之外,您对此无能为力。

“在用户选择zip文件后,onActivityResult返回data=null”--无论您选择哪个应用程序来处理
操作\u获取\u内容
请求,都会出现错误。@commonware我试图用不同的文件选择器打开。很好。你是对的。谢谢。:)