我是Android
的新手,我正在开发一个用于教育目的的简单迷宫游戏。
我很困惑,我应该如何对OnSaveInstanceState
和OnPause
回调做出反应。
基本上我想保存游戏的状态,所以当有方向改变或用户按下后退按钮时,游戏应该从保存的状态恢复。
我已经读过,不能保证会调用OnSaveInstanceState
。那我为什么要全部使用呢?我很困惑。
我应该使用哪个回调来保存游戏状态?我应该只使用OnPause
并将游戏状态保存到设备内部存储器中的文件吗?
你会如何解决这种情况?
答案 0 :(得分:2)
onPause()
和onSaveInstanceState()
之间的区别在于后者不属于Activity
生命周期的一部分。虽然您确实保证在每种情况下都会调用onPause()
,但onSaveInstanceState()
的情况并非如此。根据文档,持久性数据应保存在onPause()
上。例如,在Activity
之间的正常导航期间,不会调用onSaveInstanceState/onRestoreInstanceState
对