Android Studio中Okhttp的使用
首先要使用Okhttp在这里插入代码片
库就要导入依赖:
在build.gradle文件的dependencies代码块中添加如下语句:
dependencies {
implementation 'com.squareup.okhttp3:okhttp:4.4.0'
implementation 'com.squareup.okio:okio:1.5.0'
}
OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder()
.url("http://49.235.134.191/news_list_data.json")
.build();
client.newCall(request).enqueue(new Callback() {
@Override
public void onFailure(Call call, IOException e) {
}
@Override
public void onResponse(Call call, Response response) throws IOException {
//自己定义的内容
if(response.isSuccessful()){//回调的方法执行在子线程。
String json=response.body().string();
Gson gson=new Gson();
news=gson.fromJson(json,listType);
int i=0;
for (News nw:news)
{
names[i]=nw.getTitle();
introduces[i]=nw.getPtime()+" "+nw.getSource();
icons[i]=nw.getImgsrc();
i++;
}
}
}
});
注意事项:
1,回调接口的onFailure方法和onResponse执行在子线程。
2,response.body().string()方法也必须放在子线程中。当执行这行代码得到结果后,再跳转到UI线程修改UI。
老师要求按这个格式写