将文件管理器中的文件路径视为Android意图

R H*_*ill 6 java android android-intent

您知道,我已经检查过Android开发人员文档和OpenIntents,但没有找到答案.不过,我可能很容易错过一些东西.

是否存在在文件管理器中查看文件路径的意图操作?Android文件管理器应用程序之间似乎没有什么标准化方式.我不希望在执行intent时出现任何异常行为,如果没有安装文件管理器,它应该什么也不做,而不是尝试以其他方式操作文件路径.

我最初的研究表明这可能目前还不可能,但我想我会看到是否有人知道更好.他们通常这样做.

编辑澄清:我不是在找文件选择器.我已经有了一个文件路径,想要打开它以便在文件管理器/文件浏览器中浏览,当且仅当设备上安装了一个时.

Bil*_*ote 10

我有以下......

        Intent intent = new Intent();
        intent.addCategory(Intent.CATEGORY_OPENABLE);
        intent.setType("text/csv");
        intent.setAction(Intent.ACTION_GET_CONTENT);
        startActivityForResult(Intent.createChooser(intent, getText(R.string.select_file)),1);
Run Code Online (Sandbox Code Playgroud)

然后onActivityResult()

        currFileURI = data.getData();
        filename_editText.setText(currFileURI.getPath());
Run Code Online (Sandbox Code Playgroud)

更新:解决方案:

public static boolean isUriAvailable(Context context, String uri) {
    Intent test = new Intent(Intent.ACTION_VIEW, Uri.parse(uri));
    return context.getPackageManager().resolveActivity(test, 0) != null;
}
Run Code Online (Sandbox Code Playgroud)