我想创建一个实用程序类来管理我的Room数据库。使用实时数据,我可以观察数据库中的更改,但是,只能将该观察者放在Activity类中。我想确认确实如此。我尝试使用上下文和活动作为边界。
我还添加了以下库来进行升级
library(stringr)
str_count(paste(example_data, collapse=""), '456')
#[1] 4
这是我如何使用观察者的示例
implementation "android.arch.lifecycle:extensions:1.1.1"
这在Activity中工作正常,但是移到了不会扩展Activity的类中,我收到了错误消息:
第一个参数错误。找到...。必填:'android.arch.lifecycle.LifecycleOwner错误
答案 0 :(得分:4)
这是因为LiveData.observe将LifecycleOwner
作为其第一个参数,而不是Context
,并且活动也是LifecycleOwner
:
public class SupportActivity extends Activity implements LifecycleOwner {
// Your activity may be a subclass of this activity.
}
因此,您可能希望将LifecycleOwner
而不是Context
传递给DatabaseUtil
。或者,如果您不在乎生命周期,则可以使用LiveData.observeForever。