首页 > 解决方案 > 是否有一个 ViewModel 在 Activity 的 onPause 上被清除(进入后台),我应该改用什么?

问题描述

我认为将 FragmentActivity 作为 storeOwner 的 AndroidViewModel 是一个好主意,以便:

但最重要的是:

问题是 FragmentActivity() 的 ViewModelStoreOwner 没有获得 clear(),...永远不会,如果我们为 ViewModels 提供一个假设的生命周期,从实例化开始,到 onCleared() 结束,并将它们绑定到Activity的storeOwner他们基本上变成了一个……Service。

因此,在创建处理/侦听 Activity 的 onStart() 和 onPause() 的自定义 ViewModelStoreOwner 之前,我想知道是否可能已经有一个组件可以执行此操作(我不知道),以及如何通过不同的片段。

现在我知道活动有自己的生命周期,但是如果有人认为完全公开每个组件只是为了访问活动的 LifeCycleOwner.... tbh 我认为这不是最好的方法,活动类将变得不可读,挤满了不相关的功能。

标签: androidandroid-activityviewmodelstoreonpause

解决方案


推荐阅读