具有 savedPhotosAlbum 源的 UIImagePickerController 不会显示实时照片吗?

UIImagePickerController with a source of savedPhotosAlbum won't show Live Photos?

我正在开发一款用户拥有个人资料照片的应用。有人的评论之一是,当您打开图书馆时,不会显示实时图片。我尝试像这样添加媒体类型:

@IBAction func selectLibrary() {
    let picker = UIImagePickerController()
    picker.sourceType = .savedPhotosAlbum
    picker.mediaTypes = ["kUTTypeImage","kUTTypeLivePhoto"]
    picker.delegate = self
    present(picker, animated: true)
}

但是,当我这样做时,我的应用程序崩溃了,并出现以下错误:

*** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: 'No available types for source 2'

这是在 iPhone 7、运行 iOS 11.0 和 iPhone 8 plus、运行 iOS 11.2[ 上测试的=12=]

有没有我遗漏的东西,也许是我在尝试使用实况照片时忘记了一些额外的步骤?

谢谢。

字符串与常量不同。你的代码说:

picker.mediaTypes = ["kUTTypeImage","kUTTypeLivePhoto"]

这些不是有效的媒体类型。您要使用的是常量:

picker.mediaTypes = [kUTTypeLivePhoto as String, kUTTypeImage as String]

您需要 import MobileCoreServices 才能使用常量。