快速提问:我是第一次玩RXJava。我所看到的教程的作者都深入探讨了如何使用它,但他们都没有谈到reactivex和netflix版本的库之间的区别。为了混淆,指向netfix github的mvnrepository链接重定向到reactivex:
https://github.com/Netflix/RxJava
https://github.com/ReactiveX/RxJava
所以,一些教程说要做到这一点:
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'
}
即使对同一个问题有不同的答案,所以这两个问题似乎可以互换使用:
https://stackoverflow.com/a/22909505/4151208
https://stackoverflow.com/a/32972674/4151208
很明显他们不一样。我发现在reactivex版本中,
AndroidObservable
类不可用。只有Netflix版本。显然版本号不同…我错过了什么?这仅仅是我读过的文档不够清晰吗?我读错文件了吗?有人能指给我一个好地方,我可以rtfm在上述方面?
最佳答案
他们是同一个图书馆。com.netflix.rxjava组id,但1.0.0及以上版本具有io.reactivex
组id。看这个changelog item。要获得最新的和最稳定的,您需要使用reactivex groupid。AndroidObservable
在某些时候被弃用并删除,这就是为什么它只存在于旧版本中。
参考netflix版本的教程很可能是在不久前编写的,而且还没有更新。