RxJava使用总结

2018-10-18 14:24:46 浏览数 (1)

1.RxJava在android中想要使用AndroidSchedulers.mainThread()这个线程,需要在你的gradle文件添加下面这个依赖

代码语言:javascript复制
    compile 'io.reactivex:rxandroid:0.23.0'

2.RxLifecycle(GitHub地址)是一个方便我们在安卓中解除Rxjava中订阅,以防内存泄露问题的开源库.有几种写法,这里要注意根据你所使用的方式,添加合适的依赖,不要图方便全部添加进来,像下面一样:

代码语言:javascript复制
compile 'com.trello:rxlifecycle:0.4.0'
compile 'com.trello:rxlifecycle-components:0.4.0'
compile 'com.trello:rxlifecycle-navi:0.4.0'

不然编译的时候会有类名重复,导致如下的错误:

代码语言:javascript复制
Error:Execution failed for task ':app:transformClassesWithDexForDebug'.
> com.android.build.api.transform.TransformException: com.android.ide.common.process.ProcessException: org.gradle.process.internal.ExecException: Process 'command 'C:Program FilesJavajdk1.7.0_79binjava.exe'' finished with non-zero exit value 2

所以按照你的需要,选择依赖,不要同时添加下面两个依赖:

代码语言:javascript复制
compile 'com.trello:rxlifecycle-components:0.4.0'
compile 'com.trello:rxlifecycle-navi:0.4.0'

这里附上我用RxJava写的一个有关火车票的小demo RxJavaDemo

0 人点赞