Glide 加载相同的URL导致无法更新图片问题

简介:Glide在加载图片的时候默认使用了缓存机制。Glide的缓存机制分为二级:内存缓存、磁盘缓存。缓存的过程是首先在内存中缓存,然后在磁盘缓存。加载图片则就是则首先加载内存中的缓存,然后再找磁盘中的缓存,如果前两级都没有的情况下,再作为一个全新的资源去加载图片。

这样会引发一个问题:只要URL不变,无论图片是否变化,都会去缓存中查询图片,导致加载出来的图片没有更新的问题就这样发生了。解决办法:

  1. 本地图片,取消缓存
Glide.load(url)
    .skipMemoryCache(true) // 不使用内存缓存
    .diskCacheStrategy(DiskCacheStrategy.NONE) // 不使用磁盘缓存
    .into(imageView);

添加标记签名

String updateTime = String.valueOf(System.currentTimeMillis()); 
Glide.load(url)
  .signature(new StringSignature(updateTime))
  .into(image);
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容