首页 > 代码库 > Glide 缓存使用
Glide 缓存使用
开发中遇到的问题,使用glide加载网络图片,每次更换头像后返回页面要同步显示已改过的头像。
我们服务端是每次上传的个人头像只是替换原图,路径并不变。
这就导致glide加载时会使用缓存的图片,导致页面图片显示不同步。
针对这个问题,我做了如下优化去掉磁盘缓存
Glide.with(this).load(imagePath).asBitmap().diskCacheStrategy(DiskCacheStrategy.NONE) .placeholder(R.drawable.defaultusericon_1).into(new BitmapImageViewTarget(ivPersonal) { @Override protected void setResource(Bitmap resource) { RoundedBitmapDrawable roundedBitmapDrawable = RoundedBitmapDrawableFactory.create(context.getResources(), resource); roundedBitmapDrawable.setCircular(true); ivPersonal.setImageDrawable(roundedBitmapDrawable); } });
然而并没有什么卵用,惆怅许久才知道glide还会有个内存缓存,修正如下:
Glide.with(this).load(imagePath).asBitmap().skipMemoryCache(true).diskCacheStrategy(DiskCacheStrategy.NONE) .placeholder(R.drawable.defaultusericon_1).into(new BitmapImageViewTarget(ivPersonal) { @Override protected void setResource(Bitmap resource) { RoundedBitmapDrawable roundedBitmapDrawable = RoundedBitmapDrawableFactory.create(context.getResources(), resource); roundedBitmapDrawable.setCircular(true); ivPersonal.setImageDrawable(roundedBitmapDrawable); } });
Glide 缓存使用
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。