Retrofit2 + RxJava2网络请求

本文介绍了如何使用Retrofit2结合RxJava2进行网络请求。作者通过实例展示了具体实现过程,虽然没有深入探讨Retrofit2与RxJava2的版本差异,但为读者提供了基本的使用指南。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

最近查看github网站,发现Retrofit2的下载量已达26.1K,浏览安卓巴士统计过去2017年最受欢迎的Android框架,第一名竟然是Retrofit,再次本人简单的实现Retrofit2与Rxjava2网络请求,请大家多多支持

本篇主要简单实现,至于RxJava2与RxJava1的区别,Retrofit1与Retrofit2的区别,可后续上传

实现如下:

创建服务接口

public interface IDemo {
 //Retrofit支持常用的各种请求方式,本例只是简单的Get请求
    @GET("福利/10/1")
    Observable<BasicResponse<List<MeiZi>>> getDataFromNet();
}
进行网络请求

 //创建retrofit实例
Retrofit retrofit =  new Retrofit.Builder()
         .addCallAdapterFactory(RxJava2CallAdapterFactory.create())
         .addConverterFactory(GsonConverterFactory.create())
         .baseUrl("http://gank.io/api/data/")
         .build();

 //获取网络请求服务代理
 IDemo iDemo = retrofit.create(IDemo.class);
 //获取方法,即获取被观察者
 Observable<BasicResponse<List<MeiZi>>> ob = iDemo.getDataFromNet();

 //采用RxJava2
 ob.subscribeOn(Schedulers.io())//网络请求在子线程中
 .observeOn(AndroidSchedulers.mainThread())//消费事件在主线程中

         //进行订阅事件
 .subscribe(new Consumer<BasicResponse<List<MeiZi>>>() {
     @Override
     public void accept(@NonNull BasicResponse<List<MeiZi>> listBasicResponse) throws Exception {
         Log.d("TAG","打印结果:"+listBasicResponse.getResults()+"===========");

     }
 });


评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值