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的优点
分析以上代码我们会发现,除了类名于方法名不同之外,其他都是一个样
下面是llambda表达式代码:
看到了么,我们在升级的时解决类名问题,如果两个版本的类名没有改,则直接可以通过去除rxjava1的包,导入rxjava2的包就可以搞定了,是不是神操作