Android 回调函数 解析问题
高洛峰
高洛峰 2017-04-17 17:09:18
[Android讨论组]
    大家先看看我的代码,Okhttp访问接口返回json 然后 解析回调的例子
    
     public static void get(String url, final CallBack callback) {
            final Request request = new Request.Builder().url(url).get().build();
            mOkhttpClient().newCall(request).enqueue(new Callback() {
                @Override
                public void onFailure(Call call, IOException e) {
                    e.printStackTrace();
                    if(callback != null) {
                         callback.onError();
                    }
                }
    
                @Override
                public void onResponse(Call call, Response response) throws IOException {
                    if (!response.isSuccessful()) {
                        if(callback != null) {
                            callback.onError();
                        }
                    }
                    final String result = response.body().string();
                    
                    if(callback != null) {
                        callback.onSuccess(String result);
                    }  
        }
        
public interface CallBack {

    void onSuccess(String result);

    void onError();
}

这样写我需要把json 字符串返回回来以后再解析 感觉很麻烦 ,

想实现以下这样的方式:
HttpRequest.get(url, new CallBack() {
    onSuccess(Test test);
    onError();
}

经过自己思考:修改回调函数:

 public interface CallBack {

    void onSuccess(T result);

    void onError();
}

public static  void get(String url, final CallBack callback) {
     Gson gson = new Gson();
     
     这时候就无法解析了  大家有没有好的实现思路,请教以下

}


高洛峰
高洛峰

拥有18年软件开发和IT教学经验。曾任多家上市公司技术总监、架构师、项目经理、高级软件工程师等职务。 网络人气名人讲师,...

全部回复(2)
ringa_lee

e...这个问题啊 我没怎么看得懂你的意思,你是想解析json字符串,在哪儿解析不都一样吗?

ringa_lee

get方法在加一个T的class参数

get(String url, final CallBack<T> callback,Class<T> cls)

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号