我的应用程序中有一个组件,可在数据库更新时执行特定的工作。为了观察Room表,我需要使用LiveData,它要求我传递LifecycleOwner。我的组件与任何视图无关,因此我没有生命周期。如何在没有引用LifecycleOwner的情况下在Room表上观察?我正在使用Kotlin和Coroutines。
你可以使用LiveData.observeForever(Observer)
。一旦您不想再获得更新,请不要忘记调用LiveData.removeObserver(Observer)
,因为使用此方法您注册将永远接收更新的观察者(如方法名称所示)。 (Docs source)