YYWebImage icon indicating copy to clipboard operation
YYWebImage copied to clipboard

会产生下载图片错误的情况

Open KrisMarko opened this issue 8 years ago • 10 comments

请求一张图片,最后显示的图片却不是请求url指向的那张,目测应该是之前缓存下的图片data与key的映射错误产生的。具体位置暂不清楚

KrisMarko avatar Sep 05 '16 11:09 KrisMarko

我也遇到了这种情况,用户反馈的。最开始以为服务器返回了错误的数据。后来发现只能把app 删了重新装之后才能显示正确的图片。

crazyant avatar Sep 07 '16 09:09 crazyant

这个问题我项目中也有出现,出现几率很小,具体的还不清楚,没有捕捉到,图片下载下来之后缓存就是错的了,缓存清空之后重新下载就正常了

MayonaiseLB avatar Sep 07 '16 10:09 MayonaiseLB

我也遇到这个问题,身边好几个人出现这个问题了

zjmdp avatar Sep 08 '16 09:09 zjmdp

是在ListView内使用时出现的问题吗?

HoneyLuka avatar Sep 08 '16 10:09 HoneyLuka

我也出现这个问题了,就是在collectionview复用机制导致的,复用的cell同时去下载了同一个url结果后面的先返回来数据,倒是数据错乱了。请问该如何解决的。感谢

lazycoder417 avatar Sep 13 '16 02:09 lazycoder417

有人反馈过相同的 Issues:https://github.com/ibireme/YYWebImage/issues/91 ,之前也仔细查过一次,暂时没有定位到问题产生的原因。。。

目前了解到,被广泛使用的 SDWebImage 有类似问题:https://github.com/rs/SDWebImage/issues/1344 ;有人甚至定位到可能是 NSURLConnection 或者 CDN 的问题:stackoverflow/nsurlconnection-wrong-connection。所以这里希望大家能提供更多的一些信息来帮助定位问题:

  1. 图片 CDN 用的是哪家的?图片上传和更新是如何处理的?能提供一个示例 URL 吗?
  2. 是否使用过其他网络图片库,比如 SDWebImage、PinRemoteImage、AFNetworking?是否遇到同样问题?依赖的网络库是什么(NSURLConnection/NSURLSession)?
  3. YYWebImage 在你的代码中是如何使用的?是否有直接访问 ImageCache 或者磁盘缓存的逻辑?是否有用 NSURLProtocol 或者 swizzle 来修改网络连接的逻辑?

ibireme avatar Sep 13 '16 05:09 ibireme

我们这里也出现过同样的问题,使用的是YYWebImage 1.0.3,图片服务器是阿里云,出现概率挺小的,但是也陆陆续续出现过几次,就是图片地址缓存成其它图片了(比如有A和B地址,A和B地址在我们的应用里错误的显示了同一张图片,但是阿里云存的不是同一张),清空缓存,又可以正常工作了。

lijicheng avatar Nov 16 '16 05:11 lijicheng

这时不应该保存下现场么...

CodeLife2012 avatar Dec 15 '16 07:12 CodeLife2012

我也遇见同样的问题,感觉是在collectionview复用机制导致的,比如cell之前赋值的是一张网络图片,然后复用后赋值一个本地Assets.xcassets的一张图片,结果cell之前的网络请求还会去请求,并且图片返回的时机比设置本地的晚,导致数据错乱了。暂时通过如果设置本地Assets.xcassets图片的cell不让他复用是网络图片的cell.不知有人解决了没

AOLLIU avatar Aug 03 '18 02:08 AOLLIU

目前我遇到的这个问题是,调用了completion的时候,就会出现错误地址,我打印了url请求地址,和设置的url不一致,回调时候url错了。

bolee avatar Jul 10 '19 05:07 bolee