【发布时间】:2019-07-10 12:30:21
【问题描述】:
我已经从 sqlbrite db 中选择,但 observable 由于某种原因没有调用 onComplete。
我的代码:
fun BriteDatabase.selectDayTimelineRecord(dayTimestamp: Long) =
createQuery(table_timeline, selectWDayRecords(dayTimestamp)).subscribeOn(Schedulers.io()).observeOn(AndroidSchedulers.mainThread())
.mapToOneOrDefault(StatItem(dayTimestamp, 0)) { cursor -> cursor.mapTimelineStat() }
然后我尝试变体:
-
工作,但我需要保持秩序,所以我不能使用平面地图
Observable.fromIterable(0..6).flatMap{ db.selectDayTimelineRecords(timestampOfDayInWeek(it)) }.buffer(7).subscribeOn(Schedulers.io()).observeOn(AndroidSchedulers.mainThread()).subscribe {}
-
不工作(不是交付结果,但我不知道为什么)
Observable.fromIterable(0..6).concatMap{ db.selectDayTimelineRecords(timestampOfDayInWeek(it)) }.buffer(7).subscribeOn(Schedulers.io()).observeOn(AndroidSchedulers.mainThread()).subscribe {}
结果我想要带有 T 列表的 Observable...
有人知道我做错了什么吗?
【问题讨论】:
标签: database rx-java rx-java2 sqlbrite