Мне нужно обновить пользовательский интерфейс с помощью асинхронного вызова к базе данных комнат, но когда я это сделаю, у меня появляется эта ошибка: android.view.ViewRootImpl $ CalledFromWrongThreadException: только исходный поток, создавший иерархию представления, может коснутьсяего взгляды.
// FavoritesPresenter.kt
GlobalScope.launch {
favoritesView.showFavorites(ProductProvider.getAllProducts() as ArrayList<Product>)
}
// ProductProvider.kt
fun getAllProducts() : MutableList<Product> {
return dao.getAllProducts()
}
// ProductDao.kt
@Query("SELECT * FROM product")
fun getAllProducts(): MutableList<Product>
Мне нужно обновить мой пользовательский интерфейс через мой ProductProvider, так как я буду использовать для всех своих организаций нужное мне надежное решение.