RXJava1到RXJava2的迁移注意事项

本文介绍了从RXJava1迁移到RXJava2的主要注意事项,包括导入包的更改、Flowable的引入以支持backpressure、ActionN和FuncN的改名、Observable.OnSubscribe等接口的变化,以及Subscription替换为Disposable。同时强调了在与Retrofit结合使用时,必须使用adapter-rxjava2库以支持RXJava2。
摘要由CSDN通过智能技术生成

Rxjava1和RxJava2 并不能共存,并且RxJava1在本篇文章写的时候,官方已经说明,即将不进行维护。

一、首先,导入包是不同的,RxJava2 导入包一般多了一个reactivex,如下

import io.reactivex.Observable;

所以,在迁移的时候,build.gradle中的依赖肯定需要修改,在文件中的导入也需要修改

二、有些方法,在RxJava2中有所改变

1、新增Flowable

RxJava1 中 Observable 不能很好地支持 backpressure ,会抛出MissingBackpressureException。所以在 RxJava2 中 Observable 不再支持 backpressure ,而使用新增的 Flowable 来支持 backpressure 。关于backpressure 的理解,可以看这篇文章。Flowable的用法跟原先的Observable是一样的

2、ActionN 和 FuncN 改名


其中,Action0 改名成Action,Action1改名成Consumer,而Action2改名成了BiConsumer,而Action3 - Action9都不再使用了,ActionN变成了Consumer<Object[]>。

同样,Func改名成Function,Func2改名成BiFunction,Func3 - Func9 改名成 Function3 - Function9,FuncN 由 Function<Object[], R> 取代。当然,对应的抽象方法也有所修改,call需要修改为apply

<
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值