如何在Android 10中打开特定文件或文件夹?
在阅读我真正需要的东西之前不要标记重复。我需要在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"
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
的形式。