Android Kotlin: ошибка при использовании 'suspend' в DAO - Следуя руководству CodeLabs - PullRequest
2 голосов
/ 23 апреля 2020

Я следовал этому руководству CodeLabs, и на в этом разделе он показывает использование ключевого слова suspend в методах DAO, но когда я делаю это, я получаю эту ошибку:

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, предшествующий этому шагу здесь .

1 Ответ

2 голосов
/ 23 апреля 2020

Хорошо, я выяснил, в чем проблема. Даже несмотря на то, что я добавил файлы сопрограмм в файлы build.grade, мне нужно было также добавить файл сопрограмм Roomi c, который будет:

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

Это будет означать использование сопрограмм с методами DAO.

Я был смущен, поскольку думал, что добавил все необходимые файлы на предыдущем шаге.

...