写个接口把onResponse中的数据带出来

GetFun的参数,就是我们要写的接口 

public static void GetFun(final VolleyCallback callback){
        String url = "http://v.juhe.cn/weather/index?format=2&cityname=%E8%8B%8F%E5%B7%9E&key=caaf70556afa6f57f5f7f9184b416fea";
        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) {
                Log.d(TAG, "onFailure: ");
            }

            @Override
            public void onResponse(Call call, Response response) throws IOException {
                callback.onSuccess(response.body().string());
                //Log.d(TAG, "onResponse: " + response.body().string());
            }
        });
    }

接口: 

interface VolleyCallback {
    void onSuccess(String result);
}

Activity中调用:

private void getResult() {
        SocketUtil.GetFun(new VolleyCallback() {
            @Override
            public void onSuccess(String result) {
                Log.d(TAG, "onSuccess" + result);
                Message msg = Message.obtain();
                msg.what = RESULT;
                msg.obj = result;
                mHandler.sendMessage(msg);
            }
        });
    }

参考:https://blog.csdn.net/u012880338/article/details/54631245

你可能感兴趣的:(android1)