在iOS 13上,PHImageManagerMaximumSize不起作用。
致电
let manager = PHImageManager.default()
let option = PHImageRequestOptions()
option.isSynchronous = synchronous
option.isNetworkAccessAllowed = true
option.resizeMode = .exact
manager.requestImage(for: asset, targetSize: PHImageManagerMaximumSize, contentMode: .aspectFill, options: option, resultHandler: {(result, info) in
})
requestImage返回一个错误: 错误域= NSCocoaErrorDomain代码= -1“(空)”
此代码在ios12上运行正常
能否让我知道如何在ios13上获取原始图像?
答案 0 :(得分:3)
引自Apple文档here:
使用PHImageManagerMaximumSize选项时,“照片”将提供资产可用的最大图像,而无需缩放或裁剪。 (也就是说,它忽略了resizeMode选项。)
但是在这种情况下,resizeMode
似乎在iOS 13上有效。
将resizeMode
设置为.none
可使PHImageManagerMaximumSize
正常工作。
答案 1 :(得分:0)
尝试requestImageDataForAsset
,即使其已标记为已弃用。
您还应该将iOS 13上的requestImage
问题作为错误报告给Apple。
答案 2 :(得分:0)
对于那些仍然无法在iOS 13上请求原始图像的人,请尝试使用requestImageDataAndOrientation。
The docs建议这是请求原始图像数据的正确方法。它返回NSData,如果需要可以使用它创建UIImage。
答案 3 :(得分:-1)
requestImageDataForAsset
已过时。 zoption.isSynchronous = Yes`在iOS 13中不起作用。