当尝试在房间中使用RxJava时,出现一个错误,提示生成的代码是错误的。返回Single时,它可以正常工作。但是,当使用flowable或observable时,向生成的方法添加额外的布尔参数会导致错误。
查询
@Query("SELECT * FROM cards")
fun cardsStream(): Observable<List<Card>>
错误
error: no suitable method found for createObservable(RoomDatabase,boolean,String[],<anonymous Callable<List<Card>>>)
生成的方法。如果删除false
,则它将编译。但是显然,我无法做到这一点,因为这是生成的代码。
return RxRoom.createObservable(__db, false, new String[]{"cards"}, new Callable<List<Card>>() {
答案 0 :(得分:1)
替换
implementation 'androidx.room:room-rxjava2:2.0.0'
使用
implementation 'androidx.room:room-rxjava2:2.1.0-alpha06'
修复它。
答案 1 :(得分:1)
我也遇到了相同的错误,但我的问题是我从AndroidX导入了room
库,而从较旧的appcompat类型库导入了room-rxjava
。 ?♂️