我在我的Android应用程序中使用Volley库。它工作得很好,但是我发现OkHttp还提供了一些更多的改进。我已经使用以下方式将OkHttp与Volley集成:
我在我的Android应用程序中使用Volley库。它工作正常,但我注意到OkHttp还提供了更多的改进。我已经使用以下方法将OkHttp与Volley集成:
Volley.newRequestQueue(mCtx.getApplicationContext(), new OkHttpStack());
我的OkHttpStack类是:
public class OkHttpStack extends HurlStack {
private final OkUrlFactory mFactory;
public OkHttpStack() {
this(new OkHttpClient());
}
public OkHttpStack(OkHttpClient client) {
if (client == null) {
throw new NullPointerException("Client must not be null.");
}
mFactory = new OkUrlFactory(client);
}
@Override protected HttpURLConnection createConnection(URL url) throws IOException {
return mFactory.open(url);
}
}
1) 值得吗?我没有注意到任何明显的改进,但这可能是因为我仍然没有在我的服务器上实现SPDY支持。
2) OkHttp 的一个增强功能是响应缓存。然而,Volley 也有这个功能。我会遇到类似于这个问题吗:https://github.com/square/okhttp/issues/680
3) 另外,我在 Volley 中使用了两个 RequestQueues - 一个用于图像,另一个用于 JSON。我应该在这两个队列中都使用 OkHttp 吗?