我应该为RxAndroid和RxJava使用哪个库

时间:2017-09-23 18:24:34

标签: android rx-java rx-android rx-java2

我正在尝试使用RxAndroid和RxJava,但我有点困惑下面提到的哪个库我应该使用? 在一些教程中,他们使用例如

中提供的以下类
 compile 'io.reactivex:rxandroid:1.2.1'
 compile 'io.reactivex:rxjava:1.1.9'

.subscribe(new Subscriber<String>)

和他们使用的一些教程例如他们使用以下lib中提供的以下类

 compile 'io.reactivex.rxjava2:rxjava:2.0.1'
 compile 'io.reactivex.rxjava2:rxandroid:2.0.1' 

 .subscribe(new Observer<String>)

  moreover, in this lib there is no "Unsubscribe()" method??!!

并且在Observer类中有一个叫做Disposable类的东西 Subscriber类中不存在

此外, 请让我知道我应该使用哪一个?

compile 'io.reactivex:rxandroid:1.2.1'
compile 'io.reactivex:rxjava:1.1.9'

compile 'io.reactivex.rxjava2:rxjava:2.0.1'
compile 'io.reactivex.rxjava2:rxandroid:2.0.1'

3 个答案:

答案 0 :(得分:0)

在我的新项目中,我使用

compile 'io.reactivex.rxjava2:rxandroid:2.0.1'
compile 'io.reactivex.rxjava2:rxjava:2.1.0'

答案 1 :(得分:0)

有两个主要版本的Rxjava和RxAndroid,基本上如果您使用的是第一个版本(1.x.y),您应该迁移到使用Rxjava2。 原因是来自正式的github回购

  

1.x行的时间表计划:

     
      
  • 2017年6月1日 - 功能冻结(没有新的运营商),只有错误修正3月
  •   
  • 31,2018年 - 生命结束,没有进一步发展
  •   

如果你从头开始,你应该使用版本2,因为它比旧版本强大得多,它有Backpressure支持,试着看一下repo和wiki here

答案 2 :(得分:0)

如果你开始新项目,你应该使用RxJava2,因为它更快,更优化。处理箱子背压的特殊类型。但它内部有更多方法。 Disposable只是Subscription类的新名称。所以在RxJava1中,它是Subscription.unsubscribe()现在它的Disposable.dispose()。