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