错误域 = NSItemProviderErrorDomain 代码 = -1000 “无法加载 public.jpeg 类型的表示形式”

Error Domain=NSItemProviderErrorDomain Code=-1000 "Cannot load representation of type public.jpeg"

提问人:Pradeep S 提问时间:5/24/2021 最后编辑:Pradeep S 更新时间:5/11/2023 访问量:8522

问:

我使用 PHPickerViewController 而不是 UIImagePickerController 从照片库中挑选图像。当我使用此代码时,我无法从已选择的图像中获取图像。

错误域 = NSItemProviderErrorDomain 代码 = -1000 “无法加载 public 类型的表示形式.jpeg” UserInfo={NSLocalizedDescription=无法加载 public 类型的表示形式.jpeg, NSUnderlyingError=0x60000080fb70 {Error Domain=NSCocoaErrorDomain Code=256 “文件 ”[...].jpeg“无法打开。UserInfo={NSURL=文件:[...]。jpeg 的 NSFilePath= [...]。jpeg, NSUnderlyingError=0x600000814b70 {错误域=NSOSStatusErrorDomain Code=-10817 “(null)”}}}})

func picker(_ picker: PHPickerViewController, didFinishPicking results: [PHPickerResult]) {
        dismiss(animated: true, completion: nil)
        
        if let itemProvider = results.first?.itemProvider, itemProvider.canLoadObject(ofClass: UIImage.self) {
            itemProvider.loadObject(ofClass: UIImage.self) { [weak self] image, error in
                DispatchQueue.main.async {
                    guard let self = self, let image = image as? UIImage else {
                        return
                    }
                }
            }
        }
    }
iOS版 斯威夫特

评论

1赞 CRDave 8/16/2021
你有什么解决方案吗?
8赞 Ivan Tkachenko 8/31/2021
似乎是iOS模拟器中的一个错误,发现了具有相同错误的类似问题 developer.apple.com/forums/thread/653993
1赞 Soja 4/6/2022
这方面有什么更新吗?对于最新的 15.4 模拟器来说,这似乎仍然是一个问题。
0赞 Pradeep S 6/9/2022
现在模拟器错误已修复。我使用了 Xcode 13 和 iOS 15 模拟器,它对我来说效果很好。
14赞 Ganpat 12/1/2022
iOS 16.0 模拟器中仍然存在问题。

答: 暂无答案