我正在使用Picasso lib来加载图片。一切都接缝正常,但我仍然有很多图像流量到服务器。 OKHttpClient是否有像max-age这样的参数来发送检查新版本图像的频率? Picasso如何知道服务器上的图像是否没有改变? Posesso每次都会向服务器发送请求,然后再决定是从缓存还是磁盘加载它?
答案 0 :(得分:0)
我使用Google应用引擎进行后端处理,并且每24小时都会清除缓存(或者您设置的任何内容)。这会触发毕加索重新加载图像,所有人都认为图像是相同的。清除GAE缓存后唯一的区别是响应是204而不是200(这应该不是问题),但毕加索认为有一个新的图像。或者在清除缓存后可能还有其他不同的东西。
我所做的只使用本地图片.networkPolicy(NetworkPolicy.OFFLINE)
和onError我从互联网加载图像。
.into(view, new Callback() {
@Override
public void onSuccess() {
}
@Override
public void onError() {
//reload request
}
});
所以,如果我想每隔30天查看一次新图片,我会保留最后一次更新日期并从互联网上重新加载,否则请使用离线版。 可能有更有效的方法来做到这一点。