首页 > 解决方案 > 返回没有 LiveData 的查询

问题描述

基本上我想做的是当我打开我的应用程序时它会进行查询以从数据库中获取一个值并使用它。

我正在使用 Room,当我尝试不使用 LiveData 时它告诉我Cannot access database on the main thread since it may potentially lock the UI for a long period of time,所以我想知道如何避免使用 LiveData,因为如果我使用它(如果我理解正确的话)我不能只从数据库中挑选信息 -我必须等到某些事情发生变化,然后我才能访问查询结果。

标签: androidsqliteandroid-studioandroid-roomandroid-livedata

解决方案


所以我找到了一个简单的解决方案。

因为我只希望这个查询使用一次——在应用程序启动时,我刚刚使用allowMainThreadQueries()函数启用了 Room 数据库以使用主线程。

如果您认为它更好,欢迎您在此处发布您的解决方案,我们将不胜感激。


推荐阅读