public class HttpUtils {
private static volatile HttpUtils instance;
private OkHttpClient client;
private Handler handler=new Handler();
private HttpUtils(){
client=new OkHttpClient();
}
public static HttpUtils getInstance(){
if (instance==null){
synchronized (HttpUtils.class){
if (null==instance){
instance=new HttpUtils();
}
}
}
return instance;
}
public void get(String url, final ICallBack callback, final Type type){
Request request=new Request.Builder().url(url).get().build();
Call call=client.newCall(request);
call.enqueue(new Callback() {
@Override
public void onFailure(Call call, final IOException e) {
handler.post(new Runnable() {
@Override
public void run() {
callback.onFailed(e);
}
});
}
@Override
public void onResponse(Call call, Response response) throws IOException {
String string=response.body().string();
Gson gson=new Gson();
final o=gson.fromJson(string,type);
handler.post(new Runnable() {
@Override
public void run() {
callback.onSuccess(o);
}
});
}
});
}
}
继续阅读与本文标签相同的文章
上一篇 :
2017杭州·云栖大会全纪实
-
[MySQL] docker下安装使用mysql配置主从复制
2026-05-18栏目: 教程
-
微信小程序实现点击改变icon的颜色样式
2026-05-18栏目: 教程
-
微信小程序的接口请求
2026-05-18栏目: 教程
-
微信小程序兼容性问题。
2026-05-18栏目: 教程
-
flex的兼容性处理问题
2026-05-18栏目: 教程
