分析原因
最近被问到okhttp 在性能上面 和 HttpUrlConnection ,volley 等框架有什么优势,回答不上来,其实之前看过 okhttp源码,一知半解,也没有做记录,现在知道后悔了
OkHttp 使用方式
OkHttp官网地址:http://square.github.io/okhttp/
OkHttp GitHub地址:https://github.com/square/okhttp
implementation 'com.squareup.okhttp3:okhttp:3.14.2'
需要在清单文件声明访问Internet的权限,如果使用缓存,那还得声明写外存的权限
异步Get请求
/**
* 异步GET请求:
* new OkHttpClient;
* 构造Request对象;
* 通过前两步中的对象构建Call对象;
* 通过Call#enqueue(Callback)方法来提交异步请求;
*/
private void asyncGetRequests() {
String url = "https://wwww.baidu.com";
OkHttpClient okHttpClient = new OkHttpClient();
final Request request = new Request.Builder()
.url(url)
.get()//默认就是GET请求
.build();
Call call = okHttpClient.newCall(request);
call.enqueue(new Callback() {
@Override
public void onFailure(Call call, IOException e) {
}
@Override
public void onResponse(Call call, Response response) throws IOException {
String result = response.body().string();
}
});
}