Fir*_*cle 5 android rx-java android-room rx-java3
我在我的项目中将 RxJava3 与 Room 一起使用,但出现以下错误
错误:不确定如何将 Cursor 转换为该方法的返回类型 (io.reactivex.rxjava3.core.Flowable>)
下面是我收到错误的 DAO 接口方法
@Query("SELECT * FROM wishlist_table")
Flowable<List<WishListMovie>> getWishList();
Run Code Online (Sandbox Code Playgroud)
我想可能是因为我在成绩文件中使用了以下依赖项:
implementation "androidx.room:room-rxjava2:$room_version"
Run Code Online (Sandbox Code Playgroud)
我试图找到 RxJava 3 的上述依赖项,但我找不到它。
我想知道如何在 Room 中使用 RxJava 3 或者我应该在我的项目中使用 RxJava 2。
2020 年 7 月 22 日
在Room 2.3.0-alpha02中添加了对 RxJava3 类型的支持。虽然它仍处于 alpha 阶段,但你可以考虑这个选项。
根据发布说明:
与 RxJava2 类似,您可以声明返回类型为 Flowable、Single、Maybe 和 Completable 的 DAO 方法。
另外一个新的工件androidx.room:room-rxjava3可用于支持 RxJava3
我想知道如何在 Room 中使用 RxJava 3,或者应该在我的项目中使用 RxJava 2。
您不能将 RxJava3 与 Room“room-rxjava2”依赖项一起使用。
RxJava2 和 RxJava3 是不同的。为了避免运行时错误(例如在链接期间),RxJava3 选择了不同的包。这就是返回类型不匹配的原因(不同的包)
在 room-rxjava3 包出现之前,您必须使用 RxJava2 作为依赖项。
您可以签出 room-rxjava2 并更改 rxjava3 的所有包并编译 aginst rxjava3,然后使用此包。
| 归档时间: |
|
| 查看次数: |
3254 次 |
| 最近记录: |