我想使用 LPMetadataProvider
(iOS 13 上的新功能)来获取链接的图像表示(例如新闻文章链接的标题图像)。
let provider = LPMetadataProvider()
provider.startFetchingMetadata(for: URL(string: "https://someurl/")!) { (metadata, error) in
metadata?.imageProvider?.howDoIGetTheImageOut()
})
貌似你可以做 loadDataRepresentation
,但 iOS 13 文档似乎更推荐使用 loadPreviewImage
,但我不确定要传递什么或如何传递使用该方法。
最佳答案
let metadataProvider = LPMetadataProvider()
let url = URL(string: "https://www.instagram.com/p/B1ZLpsZnwkY/")!
metadataProvider.startFetchingMetadata(for: url) { metadata, error in
if error != nil {
return
}
let IMAGE_TYPE = kUTTypeImage as String
metadata?.imageProvider?.loadFileRepresentation(forTypeIdentifier: IMAGE_TYPE, completionHandler: { (url, imageProviderError) in
if imageProviderError != nil {
// The fetch failed; handle the error.
return
}
let myImage = UIImage(contentsOfFile: (url?.path)!)
})
}
关于ios - 如何从 iOS 13 上的 LPMetadataProvider 获取图像?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57926213/