安卓 Kotlin : Error when using 'suspend' in DAO - Following CodeLabs guide

标签 android kotlin gradle coroutine kotlin-coroutines

我一直在关注 CodeLabs 和 this section 上的本指南它显示在 DAO 方法中使用了“suspend”关键字,但是当我这样做时,我得到了这个错误:

error: To use Coroutine features, you must add `ktx` artifact from Room as a dependency. androidx.room:room-ktx:<version>
    public abstract java.lang.Object deleteAll(@org.jetbrains.annotations.NotNull()
    public abstract java.lang.Object insert(@org.jetbrains.annotations.NotNull()
                                     ^

我在网上查了一下,但人们说你不能在 DAO 方法中使用协程。

我还添加了此步骤之前的所有 build.gradle 导入 here .

最佳答案

好的,我发现了问题所在。即使我将协程文件添加到 build.grade 文件中,我也需要添加 Room 的特定协程文件,即:

implementation "androidx.room:room-ktx:2.2.5"

这将是使用协程和 DAO 方法。

我很困惑,因为我认为我在上一步中添加了所有必要的文件。

关于安卓 Kotlin : Error when using 'suspend' in DAO - Following CodeLabs guide,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61375893/

相关文章:

java - Eclipse Gradle 插件生成数百个进程

android - 从命令行构建android项目

Ionic 3 中的 Android SDK 平台 26 许可证错误

android - TextView 大小不会在 setTextSize 上正确调整大小

android - 如何将接口(interface)附加到 fragment ,Kotlin,Android

swift - Kotlin 或 Swift 中的可调用对象

android - 如何使用 Koin 对 MVVM 进行单元测试?

android - 如何使用 Jetpack Compose 隐藏 ActionBar

gradle - 如何为默认的构建过程加载特定的build.gradle/gradle.properties

gradle - PMD Gradle插件: Remove pmdTest upon gradle check