android - Retrofit+Okhttp 是否在 Android 中默认使用 httpCaching?

标签 android http http-caching retrofit okhttp

我使用 retrofitokhttp在我们的一个应用程序中。

对于 Retrofit 的默认行为,我真的找不到很好的解释。

如果 Okhttp 在类路径上,它将被自动使用。但据我所知,默认的 HttpResponseCache 为空。

我是否需要使用 Retrofit 和 Okhttp 显式启用缓存?

最佳答案

OkHttpClient v2 的正确实现:

int cacheSize = 10 * 1024 * 1024; // 10 MiB
File cacheDir = new File(context.getCacheDir(), "HttpCache");
Cache cache = new Cache(cacheDir, cacheSize);
OkHttpClient client = new OkHttpClient.Builder()
    .cache(cache)
    .build();

参见 documentation

关于android - Retrofit+Okhttp 是否在 Android 中默认使用 httpCaching?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21577159/

相关文章:

http - 前端 ASP.NET MVC4 作为一个项目,而 ASP.NET Web API 作为同一解决方案中的另一个项目 - 如何从前端调用 WebAPI?

rest - 显式禁用 REST 服务的缓存

asp.net-mvc - 为什么 Chrome 在这两种情况下使用不同的客户端缓存?

Android 中的 java TimeZone 和 TimeUnit 以及 SimpleDateFormat

java - 将音频文件添加到我的 android 应用程序

javascript - 如何以编程方式将文件上传到谷歌驱动器

javascript - jquery ajax请求如何获得成功?

c++ - 使 Web 服务器与客户端断开连接?

http-headers - 在 CDN 中缓存但不在浏览器中

java - 如何使base64图像字符串更短,Android?