缓存时间为2小时
int cacheSize = 10 * 1024 * 1024; // 10 MiB final String CACHE_PATH = Environment.getExternalStorageDirectory().getAbsolutePath() + "/okcache"; File cacheDirectory = new File(CACHE_PATH); Cache cache = new Cache(cacheDirectory, cacheSize); OkHttpClient.Builder builder = new OkHttpClient.Builder(); builder.cache(cache); builder.addInterceptor(new Interceptor() { @Override public Response intercept(Chain chain) throws IOException { Request.Builder builder2 = chain.request().newBuilder(); builder2.cacheControl(new CacheControl.Builder().maxStale(60 * 60 * 2, TimeUnit.SECONDS).build()); Response proceed = chain.proceed(builder2.build()); return proceed; } });
最后在网络请求里
.client(
builder .build())