如何访问不同的Android文件管理器的具体路径?(How to access different

2019-07-30 21:07发布

我已经安装了不同类型的文件管理器。 文件管理器的不同类型的

  1. 默认的文件管理
  2. ASTRO-文件的经理 - v3.1.342.apk(天文)
  3. 文件管理器 - 1.2.apk(OI文件管理器)
  4. 根浏览器的文件 - 经理 - v1.4.0.apk(根浏览器)

代码:

File filePath = new File(Environment.getExternalStorageDirectory().getAbsolutePath()+"/Pictures");
Intent intent = new Intent(Intent.ACTION_GET_CONTENT);
intent.setDataAndType(Uri.parse("file:/"+filePath.getAbsolutePath()), "file/*");
startActivityForResult(intent,PICKFILE_RESULT_CODE);

当我可以选择Astro File ManagerRoot BrowserDefault File Manager ,我得到了位置,路径/mnt/sdcard

但是,当我访问OI File Manager ,我得到了位置路径/mnt/sdcard/Pictures

如何获取和开放的不同类型的文件管理器来访问位置路径/mnt/sdcard/Pictures

Answer 1:

指定初始路径的文件浏览器? 你不能。

阅读文档ACTION_GET_CONTENT 。 该合同使用这个动作并不会在所有指定初始位置。 因此,各种文件管理器做不同的事情,它是所有法律和正确的。 有些人用你试图输入数据,一些使用最后一个目录,用户是,一些在开始SD卡的根目录。

顺便说一句,你的MIME类型“文件/ *”看起来像废话,有没有这样的已知的MIME类型。 只要使用“* / *”匹配所有文件。



文章来源: How to access different File Manager specific path in android?