Retrofit+RXjava

1,首先在使用前添加依赖

  implementation 'io.reactivex.rxjava2:rxandroid:2.0.2'
    implementation 'io.reactivex.rxjava2:rxjava:2.x.y'
    implementation 'com.squareup.retrofit2:converter-gson:2.3.0'//转换器,请求结果转换成Model
    implementation 'com.squareup.retrofit2:adapter-rxjava2:2.3.0'//配合Rxjava 使用

2,创建retrofit

Retrofit retrofit = new Retrofit.Builder()
.baseUrl("http://www.qubaobei.com/ios/cf/")
.addConverterFactory(GsonConverterFactory.create())
.addCallAdapterFactory(RxJava2CallAdapterFactory.create())     //retrofit关联rxjava
.build();

3,创建对应要解析的Bean类

4,再写一个接口

public interface Service {
//http://www.qubaobei.com/ios/cf/dish_list.php?stage_id=1&limit=20&page=1
    @GET("dish_list.php")
    Observable<JavaBean> getResult(@Query("stage_id")int stage_id, @Query("limit")int limit, @Query("page")int page);
}

5,记得添加对应的权限

<uses-permission android:name="android.permission.INTERNET"></uses-permission>
Service service = retrofit.create(Service.class);
Observable<JavaBean> result = service.getResult(1, 20, 1);
result.subscribeOn(Schedulers.io())
        .observeOn(AndroidSchedulers.mainThread())
        .subscribe(new Observer<JavaBean>() {
            @Override
            public void onSubscribe(Disposable d) {
            
            }

            @Override
            public void onNext(JavaBean javaBean) {
                List<JavaBean.DataBean> data = javaBean.getData();
                String title = data.get(0).getTitle()
            }

            @Override
            public void onError(Throwable e) {
                Log.i("llalalalal", "onNext: "+e);

            }

            @Override
            public void onComplete() {

            }
        });
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值