UIImagePickerController 仅显示 Videos 文件夹,不显示 Selfies 和 Slo-mo 等其他文件夹

UIImagePickerController shows only Videos folder but not others like Selfies and Slo-mo

使用 UIImagePickerController 时,我可以使用以下代码过滤视频仅显示 iOS 12(也适用于 iOS 10+):

picker.allowsEditing = false
picker.mediaTypes = ["public.movie"]
picker.sourceType = .photoLibrary
if #available(iOS 11.0, *) {
   picker.videoExportPreset = AVAssetExportPresetPassthrough
}
present(picker, animated: true, completion: nil)

但是显示了很多iOS个默认文件夹,比如朋友圈、相册、最近添加、视频、自拍、慢动作和我创建的其他相册。

如何只显示 Videos 文件夹?

您可以尝试将 UIImagePickerControllerSourceTypeSavedPhotosAlbum 指定为来源类型。它只会显示所有视频。

picker.sourceType = .savedPhotosAlbum

此外,不要将字符串用于媒体类型,最好使用常量:

import MobileCoreServices
...
picker.mediaTypes = [kUTTypeMovie as String]