温馨提示×

Android FileChooser能否支持多种文件类型

小樊
83
2024-09-15 22:44:11
栏目: 编程语言

是的,Android FileChooser 可以支持多种文件类型。为了实现这个功能,您需要在创建 Intent 时指定可接受的 MIME 类型。以下是一个示例代码,展示了如何使用 FileChooser 选择多种文件类型:

private static final int FILE_PICK_REQUEST_CODE = 1;

private void openFilePicker() {
    Intent intent = new Intent(Intent.ACTION_GET_CONTENT);
    intent.setType("*/*");
    intent.addCategory(Intent.CATEGORY_OPENABLE);
    intent.putExtra(Intent.EXTRA_MIME_TYPES, new String[]{"image/*", "video/*", "audio/*", "text/plain"});
    startActivityForResult(Intent.createChooser(intent, "选择文件"), FILE_PICK_REQUEST_CODE);
}

@Override
protected void onActivityResult(int requestCode, int resultCode, @Nullable Intent data) {
    super.onActivityResult(requestCode, resultCode, data);
    if (requestCode == FILE_PICK_REQUEST_CODE && resultCode == RESULT_OK && data != null) {
        Uri uri = data.getData();
        // 处理选中的文件
    }
}

在这个示例中,我们创建了一个 Intent,并设置了 MIME 类型为 “/”,表示可以选择任意类型的文件。然后,我们使用 Intent.EXTRA_MIME_TYPES 额外参数指定了可接受的 MIME 类型,包括图像、视频、音频和纯文本文件。最后,我们使用 startActivityForResult() 方法启动 FileChooser,并在 onActivityResult() 方法中处理选中的文件。

0