2

我想在我的应用程序中有一个按钮,让用户从设备上的应用程序中选择图像或任何其他文件。这是我的活动中的代码,用于让用户从 Dropbox 和 Drive 等应用中选择文件:

    private static int RESULT_GET_CONTENT = 1;

    public void getFileContent() {
        Intent fileIntent = new Intent(Intent.ACTION_GET_CONTENT);
        fileIntent.setType("file/*");
        startActivityForResult(fileIntent, RESULT_GET_CONTENT);
    }

这会显示可用应用程序的列表。当用户选择一个应用程序时,他可以浏览文件。

要从图库中选择图像,我可以将意图的类型更改为"image/*".

如何更改此设置以显示包含文件应用程序(Dropbox 和 Drive)和图像应用程序(图库)的应用程序列表?

4

1 回答 1

5

事实证明,解决方案非常简单。我只需要使用“*/*”作为类型,然后添加可打开的类别,它会过滤掉我不想要的联系人等内容。

public void getFileContent() {
    Intent fileIntent = new Intent(Intent.ACTION_GET_CONTENT);
    fileIntent.setType("*/*");
    fileIntent.addCategory(Intent.CATEGORY_OPENABLE);
    startActivityForResult(fileIntent, RESULT_GET_CONTENT);
}
于 2013-09-26T17:07:46.627 回答