从Implicit-Intent返回FilePath

时间:2016-07-31 09:06:21

标签: android android-intent file-manager

要启动文件管理器应用,以便用户可以选择要打开的文件,我使用以下代码:

    Intent pickFile = new Intent(Intent.ACTION_GET_CONTENT);
    pickFile.setType("file/*");
    pickFile.addCategory(Intent.CATEGORY_OPENABLE);
    if (pickFile.resolveActivity(getPackageManager()) != null) {
        startActivityForResult(pickFile,FILE_REQUEST_CODE);
    } else{
        Toast.makeText(getApplicationContext(),"Did not start intent",Toast.LENGTH_SHORT).show();
        return;
    }

这很好用,但文件管理器在根目录中打开 对于用户来说,这需要点击太多,直到达到所需的文件。

那么有没有办法从不同的文件夹启动Intent,而不是根目录?此外,Android Developer Guide似乎没有提供解决方案。

1 个答案:

答案 0 :(得分:0)

试试这个

Intent intent = new Intent(Intent.ACTION_GET_CONTENT);
Uri uri = Uri.parse(Environment.getExternalStorageDirectory().getPath()
    + "/yourFolder/");
intent.setDataAndType(uri, "*/*");
startActivityForResult(Intent.createChooser(intent, "Open folder"),FILE_REQUEST_CODE);