Android: 打开视频选择器并按长度过滤视频

Android: open video picker and filter videos seen by length

这是我用于打开视频和图像选择器的代码 - 但是我不需要显示长度超过 5 分钟的视频。这可能吗?

 public void startChoosePhotoFromLibrary() {
        if (checkOrRequestExternalStoreagePermission()) {
            if (Build.VERSION.SDK_INT < 19) {
                Intent photoPickerIntent = new Intent(Intent.ACTION_PICK);
                photoPickerIntent.setType("image/* video/*");
                startActivityForResult(photoPickerIntent, PICK_PHOTO_ACTIVITY_REQUEST_CODE);
            } else {
                Intent photoPickerIntent = new Intent(Intent.ACTION_GET_CONTENT);
                photoPickerIntent.setType("*/*");
                photoPickerIntent.putExtra(Intent.EXTRA_MIME_TYPES, new String[]{"image/*", "video/*"});
                startActivityForResult(photoPickerIntent, PICK_PHOTO_ACTIVITY_REQUEST_CODE);
            }
        }
    }

This is my code for opening up the picker for Videos and Images

ACTION_PICK 不使用 MIME 类型。 ACTION_PICK 从内容集合中挑选,该集合由您在 Intent 中提供的 Uri 标识。

此外,MIME 类型中没有空格。

Is this possible?

不是通过那些 Intent 操作,也不是通过 Android SDK 中的任何内容选择机制。

欢迎您在 MediaStore 查询视频,可能有一种方法可以按长度过滤此类视频。但是随后您需要提供自己的 UI 以允许用户从查询结果中选择某些内容(例如,ListViewRecyclerView)。