我在我的Android应用程序中使用Picasso。
$nameOfTheClass = "someClass";
$class = Pimcore\Model\Object\ClassDefinition::getByName($name);
当上下文发生变化时 - 它会再次下载。
所以我想知道,如何设置Picasso将图像保存到SD卡并从中读取,尽管有上下文变化?
答案 0 :(得分:1)
对于缓存,我会使用OkHttp拦截器来控制缓存策略。查看OkHttp库中包含的此示例。请查看此链接square/okhttp
以下是我与毕加索一起使用的方法 -
OkHttpClient okHttpClient = new OkHttpClient();
okHttpClient.networkInterceptors().add(new Interceptor() {
@Override
public Response intercept(Chain chain) throws IOException {
Response originalResponse = chain.proceed(chain.request());
return originalResponse.newBuilder().header("Cache-Control", "max-age=" + (60 * 60 * 24 * 365)).build();
}
});
okHttpClient.setCache(new Cache(mainActivity.getCacheDir(), Integer.MAX_VALUE));
OkHttpDownloader okHttpDownloader = new OkHttpDownloader(okHttpClient);
Picasso picasso = new Picasso.Builder(mainActivity).downloader(okHttpDownloader).build();
picasso.load(imageURL).into(viewHolder.image);