Android 原因是什么;onSaveInstanceState“;“当”时不调用;“后退按钮”;有压力吗?

Android 原因是什么;onSaveInstanceState“;“当”时不调用;“后退按钮”;有压力吗?,android,Android,按下“后退按钮”时不调用“onSaveInstanceState”有什么特殊原因吗?当我按下后退按钮时,视图状态应该被保存,这对我来说是有意义的。Android开发人员是否考虑了一个特定的用例,这意味着在按下back时不保存视图状态实际上更好?执行back操作时,活动和片段将被销毁。当您不想再次创建活动(例如方向更改)时,为什么要保存实例 如果您想要保存一些数据,或者更好,将其传递回调用活动/片段,那么您应该使用onActivityResult机制。为此,您必须使用“结果启动”方法启动活动,并在

按下“后退按钮”时不调用“onSaveInstanceState”有什么特殊原因吗?当我按下后退按钮时,视图状态应该被保存,这对我来说是有意义的。Android开发人员是否考虑了一个特定的用例,这意味着在按下back时不保存视图状态实际上更好?

执行back操作时,活动和片段将被销毁。当您不想再次创建活动(例如方向更改)时,为什么要保存实例


如果您想要保存一些数据,或者更好,将其传递回调用活动/片段,那么您应该使用onActivityResult机制。为此,您必须使用“结果启动”方法启动活动,并在按下“后退”按钮时将结果设置为意图。

如果您希望在导航离开时持久存储数据,则应使用onResume()或onPause()。据我所知,数据持久性有三个级别:savedInstanceState、SharedReferences、,和SQL数据。如果有的话,我认为我想要保存的数据最适合SharedReferences,因为它本质上就是:首选项。但是,为什么不将所有viewState放在SharedReferences中呢?savedInstanceState有什么用?