Rxjava1升级Rxjava2坑

共存问题

通常情况下,如果我们希望在一个模块中既想使用rxjava1又想使用rxjava2,这个时候在运行的时候会出现一下报错:

出现此报错的原因大概就是找到某个类的两个文件入口,因此无法判断使用哪个方法.

依赖问题

如果有依赖rxjava1,那么升级时在运行时也会出现上述所说的问题:
a、第三方模块
b、手动导jar包
c、通过compile方式的库

其中最大的坑就是Bmob的引用问题(希望Bmob能尽快解决):
由于本人是使用导jar包的方式引入Bmob的,因此我就对这种方式的依赖问题说下自己的观点。

自己对第三方库和第三方服务的一些看法

rxjava2与rxjava1的一些变化

下面我给出rxjava2的学习博客[给初学者的Rxjava2.0教程][1]

Action -> Consumer

Func -> Function

Observable.OnSubscribe -> ObservableOnSubscribe

Observable.Transformer -> ObservableTransformer

Subscription -> Disposable

发现一个lambda的优点

Rxjava1升级Rxjava2踩坑一记-LMLPHP

分析以上代码我们会发现,除了类名于方法名不同之外,其他都是一个样

下面是llambda表达式代码:

Rxjava1升级Rxjava2踩坑一记-LMLPHP

看到了么,我们在升级的时解决类名问题,如果两个版本的类名没有改,则直接可以通过去除rxjava1的包,导入rxjava2的包就可以搞定了,是不是神操作

05-26 08:51