如何在android中访问不同的文件管理器特定路径?

时间:2012-08-09 12:30:18

标签: android android-intent

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

是不同类型的文件管理器
  1. 默认文件管理器
  2. ASTRO-文件的管理器 - v3.1.342.apk(天文)
  3. FileManager-1.2.apk(OI文件管理器)
  4. Root-Browser-File-Manager-v1.4.0.apk(根浏览器)
  5. 代码:

    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

    访问位置路径

1 个答案:

答案 0 :(得分:4)

指定文件资源管理器的初始路径?你不能。

阅读ACTION_GET_CONTENT的文档。使用此操作的合同根本不指定初始位置。所以各种文件管理器做了不同的事情,这一切都是合法和正确的。有些使用您尝试输入的数据,有些使用用户所在的最后一个目录,有些使用sdcard的根目录。

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