app模块添加 Rxjava2详解 Room详解
//Rxjava2
implementation"io.reactivex.rxjava2:rxjava:2.2.6"
implementation'io.reactivex.rxjava2:rxandroid:2.1.1'
//room
def room_version ="2.1.0-alpha05"
implementation"androidx.room:room-runtime:$room_version"
annotationProcessor"androidx.room:room-compiler:$room_version"
// optional - RxJava support for Room
implementation"androidx.room:room-rxjava2:$room_version"
定义公共方法
public void addDisposable(Completable completable, Action action) {
if (compositeDisposable ==null) {
compositeDisposable =new CompositeDisposable();
}
compositeDisposable.add(completable
.subscribeOn(Schedulers.io())
.observeOn(AndroidSchedulers.mainThread())
.subscribe(action));
}
public void addDisposable(Single single, Consumer consumer, Consumer consumer1) {
if (compositeDisposable ==null) {
compositeDisposable =new CompositeDisposable();
}
compositeDisposable.add(single.subscribeOn(Schedulers.io())
.observeOn(AndroidSchedulers.mainThread())
.subscribe(consumer, consumer1));
}
public void addDisposable(Flowable flowable, Consumer consumer, Consumer consumer1) {
if (compositeDisposable ==null) {
compositeDisposable =new CompositeDisposable();
}
compositeDisposable.add(flowable.subscribeOn(Schedulers.io())
.observeOn(AndroidSchedulers.mainThread())
.subscribe(consumer, consumer1));
}
Dao

userDao

使用
addDisposable(localRoomUserDao.selectTestDataS("1"), new Consumer() {
@Override
public void accept(testData info)throws Exception {
//成功
}
}, new Consumer() {
@Override
public void accept(Throwable throwable)throws Exception {
//失败
}
});
网友评论