我有一个存储库,其中包含LiveData
对象,并由Activity
使用,现在需要JobService
(从Firebase调度程序)到ViewModel
。
此处有简单的Service
答案:Observe LiveData from foreground service
但它没有提到如何对JobService
执行相同操作。
答案 0 :(得分:7)
如果您想从不是LifecycleOwner的东西观察LiveData对象,可以使用observeForever
方法。
val data = getLiveDataFromSomewhere()
data.observeForever(object: Observer<Whatever> {
override fun onChanged(stuff: Whatever?) {
// do something with stuff
data.removeObserver(this)
}
})