Tôi đang sử dụng thư viện Volley trong ứng dụng Android của mình. Nó hoạt động tốt, nhưng tôi thấy rằng OkHttp cũng cung cấp một số cải tiến hơn nữa. Tôi đã tích hợp OkHttp với Volley sử dụng:Tôi có nên sử dụng thư viện OkHttp với Volley không?
Volley.newRequestQueue(mCtx.getApplicationContext(), new OkHttpStack());
lớp OkHttpStack của tôi là:
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) Có giá trị nó? Tôi đã không nhận thấy bất kỳ cải tiến đáng chú ý nào, nhưng đó có thể là do tôi vẫn chưa triển khai hỗ trợ SPDY trên máy chủ của mình.
2) Về việc tăng cường bởi OkHttp là phản hồi bộ nhớ đệm. Tuy nhiên, cú volley cũng vậy. Tôi có bất kỳ vấn đề nào tương tự như thế này không: https://github.com/square/okhttp/issues/680
3) Ngoài ra, tôi đang sử dụng hai RequestQueues trong Volley - một cho Hình ảnh & khác cho JSON. Tôi có nên sử dụng OkHttp với cả hai hàng đợi không?
Thực tế có một lợi ích. Nếu bạn sử dụng Volley theo mặc định, bạn không thể thực thi nó để sử dụng TLS theo mặc định trên Android 4.3 trở xuống. Nếu bạn sử dụng OkHttp làm ngăn xếp tùy chỉnh, bạn có thể thực thi nó. –