我正在尝试在带有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/