耗时操作写在子线程当中
new Thread(){
@Override
public void run() {
//1.创建一个okhttp客户端对象
OkHttpClient okHttpClient = new OkHttpClient();
//2.创建一个请求的对象....默认就是get方式
Request request = new Request.Builder()
.url("https://www.zhaoapi.cn/ad/getAd")
.build();
//3.客户端要去调用一个请求的对象
Call call = okHttpClient.newCall(request);
//4.执行....指定同步还是异步请求的方式....call.execute()同步的方式
try {
Response response = call.execute();
if (response.isSuccessful()){
/**
* * 响应体的 string() 方法对于小文档来说十分方便、高效。但是如果响应体太大(超过1MB),
* 应避免适应 string()方法 ,因为他会将把整个文档加载到内存中。
* 对于超过1MB的响应body,应使用流的方式来处理body。
*/
Log.i("------",response.body().string());
//设置适配器....handler...runOnUiThread()
}
} catch (IOException e) {
e.printStackTrace();
}
}
}.start();