Android中使用接口实现回调函数功能

来源:赵克立博客 分类: Android 标签:Android发布时间:2018-04-12 19:30:26最后更新:2018-04-12 19:34:49浏览:2013
版权声明:
本文为博主原创文章,转载请声明原文链接...谢谢。o_0。
更新时间:
2018-04-12 19:34:49
温馨提示:
学无止境,技术类文章有它的时效性,请留意文章更新时间,如发现内容有误请留言指出,防止别人"踩坑",我会及时更新文章

android网络开发使用okhttp3库的过程中有异步操作,我们封装的时候肯定想加个回调功能来处理返回值。如下一个简单的异步get请求

定义回调接口

import java.io.IOException;
import okhttp3.Response;
/**
 * Created by Keli on 18/4/12.
 */
public interface ICallBackResponse {
    //执行回调操作的方法
    void success(String str,Response response);
    void fail(okhttp3.Call call, IOException e);
}

异步get请求

public static void getRequestAsync(String url, final ICallBackResponse callback) {
    try {
        OkHttpClient client = new OkHttpClient();
        Request request = new Request.Builder().url(url).build();
        client.newCall(request).enqueue(new okhttp3.Callback() {
            @Override
            public void onFailure(okhttp3.Call call, IOException e) {
                callback.fail(call, e);
            }
            @Override
            public void onResponse(okhttp3.Call call, okhttp3.Response response) throws IOException {
                String str = response.body().string();
                callback.success(str, response);
            }
        });
    } catch (Exception e) {
        e.printStackTrace();
    }
}



微信号:kelicom QQ群:215861553 紧急求助须知
Win32/PHP/JS/Android/Python