从iCloud Photo Library PHImageManager获取图像

时间:2017-11-20 13:45:53

标签: ios swift4 photos


我目前有一个问题,即使用iCloud Photo Library并选择未在本地保存的图像的用户,PHImageManager返回一个空白图像(无)。
是否有自动下载仅存储在iCloud中的图像的特定选项?
(我使用自定义的CollectionView和PHImageManager)

2 个答案:

答案 0 :(得分:7)

您可以使用' requestImageData'从iCloud下载图像:

斯威夫特4:

let manager = PHImageManager.default()
let requestOptions = PHImageRequestOptions()
requestOptions.resizeMode = .exact
requestOptions.deliveryMode = .highQualityFormat;

// Request Image
manager.requestImageData(for: asset, options: requestOptions, resultHandler: { (data, str, orientation, info) -> Void in
    // Do somethign with Image Data
})

如果你已经使用它来下载图片,看起来你需要这个选项从iCloud下载它:PHImageRequestOptions.isNetworkAccessAllowed

有关更多信息,您可以转到我找到的链接: PHImageManager requestImageData with Photos iCloud Photo Library

答案 1 :(得分:1)

如果您在设置PHImageManager之前通过PHImageRequestOptions.isNetworkAccessAllowed从iCloud获取图片时遇到问题,请确保您未通过Charles Proxy连接,iCloud不喜欢由于某种原因...