Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/205.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/file/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在Android 10中打开特定文件或文件夹?_Android_File_Directory_Android 10.0 - Fatal编程技术网

如何在Android 10中打开特定文件或文件夹?

如何在Android 10中打开特定文件或文件夹?,android,file,directory,android-10.0,Android,File,Directory,Android 10.0,在阅读我真正需要的东西之前不要标记重复。我需要在Android 10中打开一个特定的文件夹,以便在我的应用程序中只能看到该文件夹中的文件 我试过这个: try { Intent intent = new Intent(Intent.ACTION_OPEN_DOCUMENT); File f = new File(getExternalFilesDir(null) + "/MyFolder"

在阅读我真正需要的东西之前不要标记重复。我需要在Android 10中打开一个特定的文件夹,以便在我的应用程序中只能看到该文件夹中的文件

我试过这个:

            try {
                Intent intent = new Intent(Intent.ACTION_OPEN_DOCUMENT);
                File f = new File(getExternalFilesDir(null) + "/MyFolder");
                Uri uri = FileProvider.getUriForFile(getApplicationContext(),getApplicationContext().getPackageName()+".provider",f);
                Toast.makeText(MainActivity.this,f.getPath(),Toast.LENGTH_LONG).show();
                intent.setDataAndType(uri,"text/plain");
                intent.addCategory(Intent.CATEGORY_OPENABLE);
                intent.addFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION);
                startActivity(intent);
            }
            catch (Exception e) {
                Log.d("Exception",e.toString());
                Toast.makeText(MainActivity.this, e.toString(), Toast.LENGTH_LONG).show();
            }
但是,它会打开整个树。

我真正想要的是打开那个文件夹。文件夹中的文件应该可以被其他应用打开。任何帮助都将不胜感激

我需要在Android 10中打开一个特定的文件夹,以便在我的应用程序中只能看到该文件夹中的文件

对不起,这不是一个选项

最接近你想要的东西。然而:

  • 它接受以前从存储访问框架获得的文档或树
    Uri
    ,而不是
    文件提供程序
    Uri
    ;及

  • 它并不阻止用户在其他地方导航——它只是控制起点


今天不止你一个人:
文件夹中的文件应该可以被其他应用程序打开。
??你这是什么意思?
这样我的应用程序中只能看到该文件夹中的文件。
不可能。用户始终可以浏览到所有其他位置。否。。。。我的意思是,我的应用程序应该只能打开MyFolder中的文本文件。据我所知,它是允许在API级别26和更高级别。API 25及以下版本如何?@SamudraGanguly:抱歉,我不知道“允许”中的“它”是什么。“它”意味着指定起始位置。您能否就我如何实现它提供更多帮助?@SamudraGanguly:“据我所知,它在API 26及以上级别中是允许的”--如我在回答中所述,仅以
额外的首字母URI
的形式。