来自服务器的图像未更新 Android
Image from server not updated Android
我需要向用户显示我从 google 云存储加载的他的个人资料图片,问题是当我更改图片并将其上传到服务器时,我刷新页面时我仍然看到旧形象。
我尝试使用 ios 版本的应用程序,它立即刷新,所以服务器没有问题。
要加载图像,我使用 Picasso,我是这样做的:
Picasso.with(ProfileActivity.this).load(imageURL).memoryPolicy(MemoryPolicy.NO_CACHE).into(profilePhoto);
我注意到当我卸载应用程序然后再次安装它时它会刷新图像,所以我猜这是缓存问题。
谁能帮忙?谢谢。
在加载图像之前尝试使其无效:
Picasso.with(ProfileActivity.this).invalidate(imageURL);
Picasso.with(ProfileActivity.this).load(imageURL).memoryPolicy(MemoryPolicy.NO_CACHE).into(profilePhoto);
编辑:您尝试过吗:
Picasso
.with(ProfileActivity.this)
.load(imageURL)
.memoryPolicy(MemoryPolicy.NO_CACHE, MemoryPolicy.NO_STORE)
.into(profilePhoto);
实际上我认为问题是因为您没有使用本地图像,它使用网络来缓存它。
如果上述方法不起作用,请尝试以下操作:
Picasso
.with(ProfileActivity.this)
.load(imageURL)
.networkPolicy(NetworkPolicy.NO_CACHE)
.into(profilePhoto);
我想出了解决办法。
我必须像这样添加网络策略:
Picasso.with(ProfileActivity.this)
.load(imageURL)
.networkPolicy(NetworkPolicy.NO_CACHE)
.memoryPolicy(MemoryPolicy.NO_CACHE)
.into(profilePhoto);
现在可以了,谢谢大家。
我需要向用户显示我从 google 云存储加载的他的个人资料图片,问题是当我更改图片并将其上传到服务器时,我刷新页面时我仍然看到旧形象。 我尝试使用 ios 版本的应用程序,它立即刷新,所以服务器没有问题。
要加载图像,我使用 Picasso,我是这样做的:
Picasso.with(ProfileActivity.this).load(imageURL).memoryPolicy(MemoryPolicy.NO_CACHE).into(profilePhoto);
我注意到当我卸载应用程序然后再次安装它时它会刷新图像,所以我猜这是缓存问题。 谁能帮忙?谢谢。
在加载图像之前尝试使其无效:
Picasso.with(ProfileActivity.this).invalidate(imageURL);
Picasso.with(ProfileActivity.this).load(imageURL).memoryPolicy(MemoryPolicy.NO_CACHE).into(profilePhoto);
编辑:您尝试过吗:
Picasso
.with(ProfileActivity.this)
.load(imageURL)
.memoryPolicy(MemoryPolicy.NO_CACHE, MemoryPolicy.NO_STORE)
.into(profilePhoto);
实际上我认为问题是因为您没有使用本地图像,它使用网络来缓存它。
如果上述方法不起作用,请尝试以下操作:
Picasso
.with(ProfileActivity.this)
.load(imageURL)
.networkPolicy(NetworkPolicy.NO_CACHE)
.into(profilePhoto);
我想出了解决办法。 我必须像这样添加网络策略:
Picasso.with(ProfileActivity.this)
.load(imageURL)
.networkPolicy(NetworkPolicy.NO_CACHE)
.memoryPolicy(MemoryPolicy.NO_CACHE)
.into(profilePhoto);
现在可以了,谢谢大家。