首页 > 解决方案 > 观察没有 LifecycleOwner 参考的 Room 表

问题描述

我的应用程序中有一个组件可以在数据库更新时执行特定的工作。为了观察 Room 表,我需要使用 LiveData,这需要我通过 LifecycleOwner。我的组件与任何视图无关,所以我没有生命周期。如何在没有参考 LifecycleOwner 的情况下在 Room 表上观察?我正在使用 Kotlin 和协程。

标签: androidkotlinandroid-roomcoroutine

解决方案


您可以使用LiveData.observeForever(Observer). 不要忘记在LiveData.removeObserver(Observer)您不想再获取更新时调用,因为使用此方法您注册了一个将永远接收更新的观察者(正如该方法的名称所暗示的那样)。(文档来源)


推荐阅读