打开系统的文件管理器,一般操作如下:

Intent intent = new Intent(Intent.ACTION_GET_CONTENT);
//设置类型,任意类型
intent.setType("*/*");
intent.addCategory(Intent.CATEGORY_OPENABLE);
startActivityForResult(intent,OPEN_FILE_REQUEST_CODE);

但是你会发现,企业微信里面【打开本地文件】的功能,右上角的更多设置里面有个【全选】的菜单,这说明我们需要携带一些参数,才能打开这个【全选】的功能。百度了半天,没找到答案,这怎么办?

后来想,参数肯定在Intent里面,诸如CATEGORY_OPENABLE这样的参数,多选or全选的英文是MULTI的前缀,基于此,在源码里面搜索一番,真发现了EXTRA_ALLOW_MULTIPLE这个参数。大致看了下英文注释,应该就是,代码验证了一下,确实,完整代码如下:

Intent intent = new Intent(Intent.ACTION_GET_CONTENT);
intent.setType("*/*");
intent.addCategory(Intent.CATEGORY_OPENABLE);
intent.putExtra(Intent.EXTRA_ALLOW_MULTIPLE, true);
startActivityForResult(intent,OPEN_FILE_REQUEST_CODE);

小记一下,希望对其他人有帮助

更多推荐

Android打开系统自带文件管理器,全选菜单选项