Android SHARE INTENT INTENT.createChooser:如何显示所有已安装的文件浏览器应用程序?

Android SHARE INTENT INTENT.createChooser:如何显示所有已安装的文件浏览器应用程序?,android,android-intent,file-browser,share-intent,android-intent-chooser,Android,Android Intent,File Browser,Share Intent,Android Intent Chooser,我想在用户按下我的应用程序中的“浏览文件”按钮时显示所有已安装的文件浏览器应用程序,但不传递任何文件,我只想打开一个文件浏览器。另外,我不想等待文件选择器或任何其他结果。我只想显示为浏览他的文件而安装的用户应用程序 我试过这个: Intent intent = new Intent(Intent.ACTION_GET_CONTENT); intent.setType("file/*"); startActivity(Intent.createChooser(intent, g

我想在用户按下我的应用程序中的“浏览文件”按钮时显示所有已安装的文件浏览器应用程序,但不传递任何文件,我只想打开一个文件浏览器。另外,我不想等待文件选择器或任何其他结果。我只想显示为浏览他的文件而安装的用户应用程序

我试过这个:

Intent intent = new Intent(Intent.ACTION_GET_CONTENT);
intent.setType("file/*");
startActivity(Intent.createChooser(intent, getString(R.string.select_file_browser)));
它应该向用户显示设备中安装的所有文件资源管理器应用程序,该设备有三个,但不显示它们。设备刚刚打开安装在设备中的默认“文件”谷歌默认应用程序

我怎样才能解决这个问题


Intent.ACTION\u GET\u CONTENT
是否是用于此目的的正确意图?

文件应用程序(在现代安卓设备上可用)的软件包名称为

您可以获取程序包名称的启动意图,然后使用启动活动

String packageName = "com.google.android.apps.nbu.files";

Intent intent = context.getPackageManager().getLaunchIntentForPackage(packageName);

startActivity(intent);
让舒尔抓住许多可能的例外


知道程序包名称后,您可以这样启动每个应用。

否。您最好尝试使用“操作”视图。@blackapps如果我使用“操作”视图更改“操作”获取内容,则我会看到一个空的应用程序选择对话框,其文本为“没有应用程序可以执行此操作”。我应该做更多的修改吗?首先发布完整的代码。尝试其他mime类型。我只知道使用文件应用程序的Android 11设备的解决方案。我不知道如何显示所有的文件浏览器。@blackapps完整的代码已经在我的问题中发布了,我应该改变什么吗?你看到了吗?我不知道。你试过其他mime类型吗?我没看到你这么做。
String packageName = "com.google.android.apps.nbu.files";

Intent intent = context.getPackageManager().getLaunchIntentForPackage(packageName);

startActivity(intent);