ios13 使用 PHImageManager 获取原始图像

Nem*_*emo 3 swift phasset phimagemanager ios13

在 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
})
Run Code Online (Sandbox Code Playgroud)

requestImage 返回错误:Error Domain=NSCocoaErrorDomain Code=-1 "(null)"

此代码在 ios12 上运行良好

你能告诉我如何在ios13上获取原始图像吗?

Sch*_*zer 8

正如此处引用的 Apple 文档:

当您使用 PHImageManagerMaximumSize 选项时,照片会提供可用于资产的最大图像,而无需缩放或裁剪。(也就是说,它忽略了resizeMode选项。)

但是在这种情况下,resizeMode似乎在 iOS 13 上有效。

设置resizeMode.none品牌PHImageManagerMaximumSize按预期方式工作。

  • 对于那些发现此解决方案不起作用的人,请尝试将 option.isSynchronous 设置为 true。 (3认同)