通过 SdWebImage 设置图像给出“错误代码=-1003”并使用 CFNetwork 诊断日志“Err(-65554)”
Posted
技术标签:
【中文标题】通过 SdWebImage 设置图像给出“错误代码=-1003”并使用 CFNetwork 诊断日志“Err(-65554)”【英文标题】:Setting image through SdWebImage gives “Error code=-1003” and using CFNetwork Diagnostics log "Err(-65554)" 【发布时间】:2019-09-19 13:05:08 【问题描述】:使用SDWebimage
块生成tableCell 的图像部分:
[cell.i_imageView
sd_setImageWithURL:[NSURL URLWithString: item.imageUrl]
placeholderImage:[UIImage imageNamed:@"no-image"]
options: SDWebImageRefreshCached
completed:^(UIImage * _Nullable image, NSError * _Nullable error, SDImageCacheType cacheType, NSURL * _Nullable imageURL)
if(!image)
NSLog(@"image not loaded %@", error.description);
在大多数情况下,图像加载正常,但有时在 SDwebimage 的完成处理程序中失败时,它会给出这些错误消息“错误代码=-1003”,并且在使用 CFNetwork 诊断日志时会给出“Err(-65554)”。
经过大量研究,我发现这是一个与 DNS 相关的问题,并使用以下方法测试了这一理论,
在实际设备上使用 *** 断开 WIFI 并使用蜂窝数据对于这些上述技术,图像会再次重新加载,但我不能在运送产品时押注上述两种方法,所以任何 NSURLSession 调用、我可能在这里遗漏的 SdWebImage 方法都可以解决问题,或者可能是为这些特定 URL 打开蜂窝数据的方法
【问题讨论】:
-1003 是 NSURLErrorCannotFindHost 错误。没有互联网连接时的常见错误。 我确定设备连接稳定 【参考方案1】:原来是使用合作 Wifi ISP 的问题,该 ISP 对一些经过测试的 URL 进行了保留,唯一需要的就是重新连接到新的不同 Wifi 或使用蜂窝网络。
它从未与 SDWebimage 相关
【讨论】:
以上是关于通过 SdWebImage 设置图像给出“错误代码=-1003”并使用 CFNetwork 诊断日志“Err(-65554)”的主要内容,如果未能解决你的问题,请参考以下文章
SDWebImage 使用 Swift 在 CellView 中将图像设置为 UIButton
TableCell ImageView 使用 URL 设置图像:SDWebImage:仅调整第一行的大小