Glide的引入网上很多,更换图片时候调用资源id时候多更改名字才可以实现,网络请求时候用一个固定url请求也不加载直接读取缓存,导致后台换图片,手机不起作用。
网上说完全起线程清除缓存,或者
设置跳过内存缓存
Glide.with(this).load(imageUrl).skipMemoryCache(true).into(imageView);
解决方法有两个:
1.每次加载都清理缓存。但这个方法是不可取的, 会导致每次都去网络加载图片. 显示非常慢. 这就相当于废弃了缓存这个好用的功能.
- <span style="white-space:pre"> </span> Glide.with(this)
- .load(uri)
- .asBitmap()
- .centerCrop()
- .diskCacheStrategy( DiskCacheStrategy.NONE )//禁用磁盘缓存
- .skipMemoryCache( true )//跳过内存缓存
- .placeholder(R.mipmap.ic_head_default)
- .transform(new GlideCircleTransform(this)).into(headIV);
第二种方法:
.signature( new StringSignature("01"))//增加签名这个api是增加签名,地址不变,改变这个签名参数也会不读取缓存重新请求。
我就是用这个方法,传递url不变也可以重新请求,不读取缓存。这个参数可以绑定版本号,每次更新重新获取,或者请求后台
强大的Glide