Android 毕加索最大年龄和检查新图像的频率
我正在使用毕加索库加载图像。一切正常,但我仍然有大量的图像流量到服务器。 OKHttpClient是否有一个参数(如max age)要发送多久检查一次图像的新版本? 毕加索如何知道服务器上的图像是否没有改变?Android 毕加索最大年龄和检查新图像的频率,android,picasso,okhttp,image-loading,Android,Picasso,Okhttp,Image Loading,我正在使用毕加索库加载图像。一切正常,但我仍然有大量的图像流量到服务器。 OKHttpClient是否有一个参数(如max age)要发送多久检查一次图像的新版本? 毕加索如何知道服务器上的图像是否没有改变? 毕加索在决定是从缓存还是从磁盘加载之前,是否每次都会向服务器发送请求?我正在使用Google app engine作为后端,它的缓存每24小时清除一次(或者你设置的任何缓存)。这就触发了毕加索重新加载图像,所有的图像都是一样的。清除GAE缓存后的唯一区别是,响应是204而不是200(这应该
毕加索在决定是从缓存还是从磁盘加载之前,是否每次都会向服务器发送请求?我正在使用Google app engine作为后端,它的缓存每24小时清除一次(或者你设置的任何缓存)。这就触发了毕加索重新加载图像,所有的图像都是一样的。清除GAE缓存后的唯一区别是,响应是204而不是200(这应该不是问题),但毕加索认为有一个新图像。或者,在缓存被清除后,可能会有其他不同之处 我所做的只是使用本地映像
.networkPolicy(networkPolicy.OFFLINE)
还有一个错误,我从互联网上加载了图像
.into(view, new Callback() {
@Override
public void onSuccess() {
}
@Override
public void onError() {
//reload request
}
});
所以,如果我想每30天检查一次新图像,我会保留一个最新的更新日期,然后从互联网上重新加载,否则就离线使用。
可能有更有效的方法来实现这一点。我正在使用Google app engine作为后端,它的缓存每24小时清除一次(或者你设置的任何缓存)。这就触发了毕加索重新加载图像,所有的图像都是一样的。清除GAE缓存后的唯一区别是,响应是204而不是200(这应该不是问题),但毕加索认为有一个新图像。或者,在缓存被清除后,可能会有其他不同之处 我所做的只是使用本地映像
.networkPolicy(networkPolicy.OFFLINE)
还有一个错误,我从互联网上加载了图像
.into(view, new Callback() {
@Override
public void onSuccess() {
}
@Override
public void onError() {
//reload request
}
});
所以,如果我想每30天检查一次新图像,我会保留一个最新的更新日期,然后从互联网上重新加载,否则就离线使用。
可能还有更有效的方法。您找到任何解释了吗,我也在寻找相同的解释。我可以控制服务器上响应集的标题刷新图像的频率。为什么毕加索每次都会向服务器发送请求,然后再决定是从缓存还是从磁盘加载图像?每次使用毕加索加载图像时,我都会看到一个请求,我如何才能停止此行为。我不认为您可以停止此行为,可能是您可以尝试使用其他缓存库,如Volley,可能会给您更多选项。您是否找到任何解释,我也在寻找同样的方法。我可以控制服务器上响应集的标题刷新图像的频率。为什么毕加索每次都会向服务器发送请求,然后再决定是从缓存还是从磁盘加载?我每次使用毕加索加载图像时都会看到一个请求,我如何才能停止这种行为。我不认为你可以停止这种行为,可能是你可以尝试使用其他缓存库,如Volley,可能会给你更多的选择。