问题: 11系统以下,使用UIImagePickerController选择照片,回调获取到的路径是Assets路径,再将这个路径转换为图片资源的时候,使用alAsset?.thumbnail(),然后去设置转换为CGImage时报错
解决:通过alAsset获取到thumbnail, 或者通过representation获取到原图,最后均需要调用方法takeUnretainedValue()
func getImageDetailInfo(imageUrl:URL) {let assetslibrary = ALAssetsLibrary()assetslibrary.asset(for: imageUrl, resultBlock: { (alAsset) inlet representation = alAsset!.defaultRepresentation()let image = representation?.fullResolutionImage()let imgRef = alAsset?.thumbnail()!.takeUnretainedValue()DispatchQueue.main.async {let iamge = UIImage(cgImage: imgRef!)self.iconView?.image = iamge}}) { (error) in}}