我一直遵循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方法中使用协程。

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

最佳答案

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

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

这将是将协程与DAO方法一起使用。

当我以为自己在上一步中添加了所有必需的文件时,我感到很困惑。

07-28 13:41