YYWebImage
YYWebImage copied to clipboard
会产生下载图片错误的情况
请求一张图片,最后显示的图片却不是请求url指向的那张,目测应该是之前缓存下的图片data与key的映射错误产生的。具体位置暂不清楚
我也遇到了这种情况,用户反馈的。最开始以为服务器返回了错误的数据。后来发现只能把app 删了重新装之后才能显示正确的图片。
这个问题我项目中也有出现,出现几率很小,具体的还不清楚,没有捕捉到,图片下载下来之后缓存就是错的了,缓存清空之后重新下载就正常了
我也遇到这个问题,身边好几个人出现这个问题了
是在ListView内使用时出现的问题吗?
我也出现这个问题了,就是在collectionview复用机制导致的,复用的cell同时去下载了同一个url结果后面的先返回来数据,倒是数据错乱了。请问该如何解决的。感谢
有人反馈过相同的 Issues:https://github.com/ibireme/YYWebImage/issues/91 ,之前也仔细查过一次,暂时没有定位到问题产生的原因。。。
目前了解到,被广泛使用的 SDWebImage 有类似问题:https://github.com/rs/SDWebImage/issues/1344 ;有人甚至定位到可能是 NSURLConnection 或者 CDN 的问题:stackoverflow/nsurlconnection-wrong-connection。所以这里希望大家能提供更多的一些信息来帮助定位问题:
- 图片 CDN 用的是哪家的?图片上传和更新是如何处理的?能提供一个示例 URL 吗?
- 是否使用过其他网络图片库,比如 SDWebImage、PinRemoteImage、AFNetworking?是否遇到同样问题?依赖的网络库是什么(NSURLConnection/NSURLSession)?
- YYWebImage 在你的代码中是如何使用的?是否有直接访问 ImageCache 或者磁盘缓存的逻辑?是否有用 NSURLProtocol 或者 swizzle 来修改网络连接的逻辑?
我们这里也出现过同样的问题,使用的是YYWebImage 1.0.3,图片服务器是阿里云,出现概率挺小的,但是也陆陆续续出现过几次,就是图片地址缓存成其它图片了(比如有A和B地址,A和B地址在我们的应用里错误的显示了同一张图片,但是阿里云存的不是同一张),清空缓存,又可以正常工作了。
这时不应该保存下现场么...
我也遇见同样的问题,感觉是在collectionview复用机制导致的,比如cell之前赋值的是一张网络图片,然后复用后赋值一个本地Assets.xcassets的一张图片,结果cell之前的网络请求还会去请求,并且图片返回的时机比设置本地的晚,导致数据错乱了。暂时通过如果设置本地Assets.xcassets图片的cell不让他复用是网络图片的cell.不知有人解决了没
目前我遇到的这个问题是,调用了completion的时候,就会出现错误地址,我打印了url请求地址,和设置的url不一致,回调时候url错了。