OK+retrofit


public interface DelPerson {
    void canshu(String url, Map<String, String> map);
}

public class DelPersonlei implements DelPerson,DelModel.Onfinsh {
    private DelMyinit delMyinit;
    private final DelModellei delModellei;

    public DelPersonlei(DelMyinit delMyinit) {
        this.delMyinit = delMyinit;
        delModellei = new DelModellei();
    }

    @Override
    public void canshu(String url, Map<String, String> map) {
        if(delMyinit==null){
            return;
        }
        delModellei.canshu(url,map,this);
    }
    //解绑使用
    public void catchView(){
        if(null != delMyinit){
            delMyinit = null;
        }
    }
    @Override
    public void success(String delCar) {
        delMyinit.success(delCar);
    }

    @Override
    public void failure(String sb) {
        delMyinit.failure(sb);
    }
}

public interface DelModel {
    public interface Onfinsh {
        void  success(String delCar);
        void failure(String sb);
    }
    void canshu(String url, Map<String, String> map, Onfinsh onfinsh);
}

public class DelModellei implements DelModel {
    @Override
    public void canshu(String url, Map<String, String> map, final Onfinsh onfinsh) {
//        RetrofitUtils instance = RetrofitUtils.getInstance(map, url);

        Log.e("chen", "canshu: 我是接受到的数据"+url+map );
        DelOkHttpUtils.getInert().doGet(map,url, new DelUtiulsinteface() {
            @Override
            public void chenggong(String delCar) {
                onfinsh.success(delCar);
            }

            @Override
            public void shibai(String shi) {
                onfinsh.failure(shi);
            }
        });
    }
}
public class DelCar {

    /**
     * msg : 购物车数据不存在
     * code : 1
     */

    private String msg;
    private String code;

    public String getMsg() {
        return msg;
    }

    public void setMsg(String msg) {
        this.msg = msg;
    }

    public String getCode() {
        return code;
    }

    public void setCode(String code) {
        this.code = code;
    }
}

public interface DelMyinit {
    void  success(String delCar);
    void failure(String sb);
}
import retrofit2.Call;
import retrofit2.http.GET;
import retrofit2.http.QueryMap;

//删除的接口
//http://120.27.23.105/product/deleteCart?uid=3515&pid=26
//http://120.27.23.105/product/updateCarts?uid=71&sellerid=1&pid=1&selected=0&num=10

public interface Servceinteface {
    @GET("getCarts")
        //泛型中放的是返回的Bean类,后面的参数放的是map集合,存放拼接的参数
    Call<Carbean> call(@QueryMap Map<String, String> map);

    @GET("deleteCart")
        //泛型中放的是返回的Bean类,后面的参数放的是map集合,存放拼接的参数
    Call<DelCar> del(@QueryMap Map<String, String> map);

    @GET("updateCarts")
        //泛型中放的是返回的Bean类,后面的参数放的是map集合,存放拼接的参数
    Call<UpdateCar> update(@QueryMap Map<String, String> map);
}
public interface DelUtiulsinteface {
    void chenggong(String delCar);
    void  shibai(String shi);
}

import okhttp3.OkHttpClient;
import retrofit2.Call;
import retrofit2.Callback;
import retrofit2.Response;
import retrofit2.Retrofit;
import retrofit2.converter.gson.GsonConverterFactory;

    public class DelOkHttpUtils {
        private Handler handler=new Handler();
        private static DelOkHttpUtils okHttp;
        private String message;
        private String result;

    //单例模式
        private DelOkHttpUtils(){

        }
        public static DelOkHttpUtils getInert(){
            if(null == okHttp){
                synchronized (DelOkHttpUtils.class){
                    okHttp=new DelOkHttpUtils();
                }
            }
            return okHttp;
        }
        public  void doGet(Map<String,String> map, String uri, final DelUtiulsinteface delUtiulsinteface){
            //创建OkHttp网络请求对象
            OkHttpClient build1 = new OkHttpClient.Builder()
                    .build();
            //创建一个Retrofit的创建对象
            Retrofit build = new Retrofit.Builder()
                    .addConverterFactory(GsonConverterFactory.create())
                    //通过这个方法将Okhttp放进Retrofit中,实现结合使用
                    .client(build1)
                    .baseUrl(uri)
                    .build();
            Log.e("chen", "doGet: 我是ok的接口"+uri );
            //APIInterface是我们自定义的接口类,用来拼接地址
            Servceinteface servceinteface = build.create(Servceinteface.class);
            Call call = servceinteface.del(map);
            Log.e("chen", "doGet:啊啊啊啊啊 "+call );

            call.enqueue(new Callback<DelCar>() {
                @Override
                public void onResponse(Call<DelCar> call, Response<DelCar> response) {
//                    String msg = response.body().getMsg();
                    Log.e("chen", "onResponse:好的 "+"123456" );

                    String body = response.body().getMsg();
                    delUtiulsinteface.chenggong(body);
                }
                @Override
                public void onFailure(Call<DelCar> call, Throwable t) {
                    String s = t.getMessage().toString();
                    delUtiulsinteface.shibai(s);
                }
            });
        }
    }





评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值