我正在尝试在带有Completable注释方法的Dao类中使用@Insert,但是在尝试编译项目时,出现了以下错误:

error: Methods annotated with @Insert can return either void, long, Long, long[], Long[] or List<Long>.
public abstract io.reactivex.Completable insert(@org.jetbrains.annotations.NotNull()

这里是我的相关代码:
@Insert
fun insert(kanal: Kanal): Completable
@Update
fun update(kanal: Kanal): Completable
@Delete
fun delete(kanal: Kanal): Completable

而我的依赖:
def room_version = "1.1.1"
implementation "android.arch.persistence.room:runtime:$room_version"
kapt "android.arch.persistence.room:compiler:$room_version"
implementation "android.arch.persistence.room:rxjava2:$room_version"
implementation 'io.reactivex.rxjava2:rxkotlin:2.2.0'
implementation 'io.reactivex.rxjava2:rxandroid:2.1.0'

根据此link,它得到Room的支持。

最佳答案



将您的房间从1.1.1更新为2.1.0或更高版本,它将起作用。

关于kotlin - 无法在Room dao界面中使用Completable,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/53596861/

10-08 21:50