在Glide中清除缓存 - Xamarin.Droid

时间:2017-07-12 15:42:17

标签: c# android xamarin xamarin.android android-glide

我使用毕加索来显示图像,然后决定转向滑行。每当用户通过Facebook登录时,我都会使用Glide来显示登录用户的照片。我在Facebook上更改了我的照片,但Glide仍显示旧图像。

经过研究,我发现了Glide缓存图像的事实。这就是我试图删除缓存以便Glide可以上传新图像的方法。这就是我清除缓存的方式

Glide.With(comment).Load(user.PhotoUrl).DiskCacheStrategy(DiskCacheStrategy.None).SkipMemoryCache(true).Into(message_profile); 但它没有帮助。我还能做些什么来解决这个问题?

2 个答案:

答案 0 :(得分:0)

来自Glide的wiki

  

实际上,使缓存文件无效的最佳方法是更改​​您的缓存文件   内容更改时的标识符(url,uri,文件路径等)。

因此,一种方法是更改​​图像的网址

其他方式是在加载图片时使用signature

.signature(new StringSignature(
System.currentTimeMillis() / (24 * 60 * 60 * 1000)))

此代码每天都会更新缓存。您可以设置任何更新间隔。

参考:this

答案 1 :(得分:0)

你可以做这样的事情,就像Nilesh说的那样,签名可能就足够了。

curl https://api.stripe.com/v1/charges?limit=3 \
   -u sk_test_BQokikJOvBiI2HlWgH4olfQ2: \
   -d created[lte]=1517443200 \
   -G 

您不一定要创建一个requestOptions变量,但这取决于您和您使用的选项数量,例如裁剪等。