Android Room: como corrigir o erro "Cannot access database on the main thread" em uma consulta SELECT simples?
Olá a todos! Sou novo no desenvolvimento Android com Kotlin e estou usando Room para banco de dados local. Tenho uma entidade User simples e um DAO com o método getAllUsers(), que retorna uma lista de todos os usuários. Chamo esse método da Activity para exibir os dados no RecyclerView. Mas o aplicativo fecha com o erro:
\n\njava.lang.IllegalStateException: Cannot access database on the main thread since it may potentially lock the UI for a long period of time.\n\nAqui está meu código:
\n\n// Entity\n@Entity(tableName = "users")\ndata class User(\n @PrimaryKey val id: Int,\n val name: String,\n val email: String\n)\n\n// DAO\n@Dao\ninterface UserDao {\n @Query("SELECT * FROM users")\n suspend fun getAllUsers(): List<User>\n}\n\n// Database