现在有了View模型,因为我们可以处理配置的变化和管理UI数据,所以onSaveInstance()我觉得现在如果对我来说没有用。
就像之前我们用onSaveInstanceState()存储较小的数据,并在配置过程中用来恢复,现在使用视图模型我们可以很容易的得到更新的数据。所以,请你告诉我 onSaveInstanceState() 和 onRestoreInstancestate() 现在如果我们使用ViewModel。
请你告诉我它在当前情况下与ViewModel的用法
当Android OS由于内存限制决定杀死你的应用进程,然后再重新创建的时候,数据还是会丢失。这与配置更改不同。
ViewModel
成功地保存了你的数据从配置更改(Activity
Fragment
Recreation),但在流程再造的情况下,它的作用不大。
为了在流程再造的情况下也能持久化数据,您需要使用 onSaveInstanceState()
.
最近的更新让你可以直接将实例状态保存在 ViewModel
流程中,将继续使用 SavedStateHandle
也就是说,你不需要仰望到 onSaveInstanceState
你的 Activity/Fragment
要持久化数据,只需使用 SavedStateHandle
在你 ViewModel
它的行为是一样的。