安卓项目易用Ohttp封装

在android中的网络请求如果用Handler来传,看代码跳来跳去太累。首先呢,这个是我实际项目中的封装,各位不用担心能不能用的问题。

支持的功能:

1.无缝在主线程调用回到主线程
2.自动Gson泛型机械,并支持到二级泛型
3.支持Activity结束时,取消所有创建的网络操作
4.支持单个网络操作取消
5.使用链式调用,使用方便

Get请求

HttpUtil.newBuilder(this)//每个请求都绑定一个activity
        .url("https://www.baidu.com/s")
        .addParam("wd","哈哈")
        .get(new HttpUtil.HttpResult<String>() {
              @Override
              public void onSuccess(String obj) {//可直接处理成功情况,不用onFailed
                  TextView textView = (TextView) findViewById(R.id.text);
                  textView.setText(obj);
              }
        });

Post请求

HttpUtil.newBuilder(this)//只是展现用法,不能获取数据
        .url("https://www.baidu.com/")
        .addParam(new HashMap<String, String>())//也可以直接添加Map参数
        .post(new HttpUtil.HttpResult<ArrayList<DriverPropertyInfo>>() {//支持两级泛型
             @Override
             public void onSuccess(ArrayList<DriverPropertyInfo> infos) {
             //很多时候我们需要list<>形式,
             }

             @Override
             public void onFailed(String msg) {
                   super.onFailed(msg);
             }
        });

取消请求

public class MainActivity extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        //get请求
        HttpUtil.HttpBuilder builder = HttpUtil.newBuilder(this)//每个请求都绑定一个activity
                .url("https://www.baidu.com/s")
                .addParam("wd","哈哈")
                .get(new HttpUtil.HttpResult<String>() {
                    @Override
                    public void onSuccess(String obj) {//可只处理成功情况
                        TextView textView = (TextView) findViewById(R.id.text);
                        textView.setText(obj);
                    }
                });

       HttpUtil.remove(builder);//取消单个请求
    }

    @Override
    protected void onDestroy() {
        super.onDestroy();
        HttpUtil.remove(this);//在结束取消activity所有网络请求,建议在baseActivity里
    }
}

最后是地址

github:https://github.com/WanYouZhi/HttpUtil
git:git@github.com:WanYouZhi/HttpUtil.git

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值