Glide加载网络图片,服务器内容更新但是Glide缓存无法清理的解决办法

最近发现一个问题,内容运营在修改图片的后,glide没有更换图片,查到是因为图片地址没有改变,导致glide认为是图片没有修改,查到了所转载的文章,但是此方法是手机端设置的,明显这种情况解决不了,还是记录一下,让运营在修改图片的时候地址不要和上一次相同即可
转载原文章地址



先描述下现象,load的URL没有改变,但是服务器上图片的内容改变了,Glide清理了缓存但是图片没有更新。

解决办法就是给图片加上signature的标识


 
 
  1. Glide.with(context.getApplicationContext())
  2. .load(imageurl)
  3. .signature( new StringSignature(String.valueOf(System.currentTimeMillis())))
  4. .diskCacheStrategy(DiskCacheStrategy.SOURCE)
  5. .placeholder(R.drawable.placeholder)
  6. .into(imageItem);

当前用户登录的时候就在sharedprefence里存储用户的信息,头像的URL ,再添加一项就是当前系统时间

例如:

myUser.setModifyTime(String.valueOf(System.currentTimeMillis())); 
当用户修改了头像的时候 在shareP里更新时间。然后通过
.signature(new StringSignature(myUser.getModifyTime))
 
 
实现头像的刷新。
https://github.com/bumptech/glide/issues/1117

https://github.com/bumptech/glide/issues/624

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值