package com.lbp.demo04; import android.os.Handler; import android.os.Message; import java.io.IOException; import okhttp3.Call; import okhttp3.Callback; import okhttp3.OkHttpClient; import okhttp3.Request; import okhttp3.Response; /** * Created by Administrator on 2018/1/3 0003. */ public class OkHttpUtils { private OkThhpGetListener okhttplist; private MyHandler handler = new MyHandler(); public void get(String url){ OkHttpClient client = new OkHttpClient(); Request request = new Request.Builder().url(url).build(); Call call = client.newCall(request); call.enqueue(new Callback() { @Override public void onFailure(Call call, IOException e) { Message msg = new Message(); msg.obj="失败了"; msg.what=0; handler.sendMessage(msg); } @Override public void onResponse(Call call, Response response) throws IOException { Message message = handler.obtainMessage(); String s = response.body().string(); message.obj=s; message.what=1; handler.sendMessage(message); } }); } public interface OkThhpGetListener{ void error(String error); void success(String json); } public void setOnOkHttpGetListener(OkThhpGetListener okhttplist){ this.okhttplist=okhttplist; } class MyHandler extends Handler{ @Override public void handleMessage(Message msg) { int i = msg.what; if(i==0){ String error = (String) msg.obj; okhttplist.error(error); } if(i==1){ String json = (String) msg.obj; okhttplist.success(json); } } } }
OKHttp请求网络数据
最新推荐文章于 2022-04-04 16:33:44 发布
本文介绍了一个使用OkHttp库进行网络GET请求的例子。通过创建OkHttpClient实例并定义请求URL,利用回调机制处理请求的成功与失败情况。文章还提供了一个自定义的监听器接口和消息处理机制来更新UI。
5952

被折叠的 条评论
为什么被折叠?



