是的,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()
方法中處理選中的文件。