快速提问:我是第一次玩RxJava。我看过的教程的作者都深入研究如何使用它,但他们都没有谈到ReactiveX和Netflix版本的库之间的差异。为了混淆事情,Netfix GitHub的mvnrepository链接重定向到ReactiveX:
所以,有些教程说这样做:
dependencies {
compile 'io.reactivex:rxandroid:1.0.1'
compile 'io.reactivex:rxjava:1.0.16'
}
其他人说这样做:
dependencies {
compile 'com.netflix.rxjava:rxjava-core:0.20.7'
compile 'com.netflix.rxjava:rxjava-android:0.20.7'
}
即使是同一个问题上的不同答案似乎也可以互换使用这两个答案:
显然他们不一样。我发现ReactiveX版本中没有AndroidObservable
类。只有Netflix版本。显然版本号不同......
我错过了什么?这只是我一直在阅读的文档中缺乏清晰度吗?我在读错了文件吗?有人能指出一个我可以RTFM以上的好地方吗?
答案 0 :(得分:9)
他们是同一个图书馆。版本< 1.0.0具有com.netflix.rxjava
groupId,但1.0.0及更高版本具有io.reactivex
groupId。见changelog item。要获得最新且最稳定的,您希望使用reactivex groupId。
AndroidObservable
在某些时候已被弃用并删除,这就是为什么它只存在于旧版本中。
引用netflix版本的教程可能是在一段时间之前编写的,尚未更新。