首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >当我们拥有onSaveInstanceState()时,还需要onSaveInstanceState()吗?

当我们拥有onSaveInstanceState()时,还需要onSaveInstanceState()吗?
EN

Stack Overflow用户
提问于 2020-05-07 10:32:17
回答 1查看 476关注 0票数 3

现在,通过视图模型,我们可以处理配置更改并管理UI数据,因此,如果对我来说没有用的话,我现在觉得onSaveInstance()是有用的。

和前面一样,我们以前存储更小的数据onSaveInstanceState(),并在配置期间恢复它,现在使用视图模型我们可以很容易地获得更新的数据。那么,如果我们使用的是onSaveInstanceState()onRestoreInstancestate(),那么您能告诉我ViewModel的实际使用情况吗?

你能告诉我在ViewModel的当前情况下它的用法吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-05-07 10:50:09

由于内存限制,当Android决定终止应用程序进程,然后再重新创建它时,数据仍然可能丢失。这与配置更改不同。

ViewModel成功地从配置更改(Activity/Fragment Recreation)中保存了您的数据,但对于过程娱乐的情况帮助不大。

为了持久化数据,即使在进程娱乐的情况下,您也需要使用onSaveInstanceState()

然而,使用最近的更新,通过SavedStateHandle ViewModel直接允许您保存实例状态,这将自动生存的过程死亡/娱乐。这意味着,您不再需要使用onSaveInstanceState of您的Activity/Fragment来在进程死亡期间持久化数据,只需在ViewModel中使用SavedStateHandle,它就会起同样的作用。

票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/61655583

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档