(savedInstanceState)是什么意思

Vim*_*kwa 3 java android navigation-drawer

在我的主要活动中有一些代码说

if (savedInstanceState != null) {
            mCurrentSelectedPosition = savedInstanceState.getInt(STATE_SELECTED_POSITION);
            mFromSavedInstanceState = true;
Run Code Online (Sandbox Code Playgroud)

我不太明白(savedInstanceState)这段代码中的含义.有人可以告诉我在这种情况下它意味着什么,因为我有点像菜鸟,我想了解代码,以便我可以学习它,理解它,甚至在需要时复制它.

小智 5

引用自(http://developer.android.com/training/basics/activity-lifecycle/recreating.html):

在某些情况下,您的活动会因应用程序的正常行为而被销毁,例如当用户按下"返回"按钮或您的活动通过调用finish()发出自己的销毁信号时.如果系统当前已停止且未长时间使用或前台活动需要更多资源,系统也可能会破坏您的活动,因此系统必须关闭后台进程才能恢复内存.

此外,如果您将应用程序的状态保存在一个包中(通常是onSaveInstanceState中的非持久性动态数据),如果需要重新创建活动(例如,方向更改),则可以将其传递回onCreate,这样您就不会丢失此先前信息.如果未提供数据,则savedInstanceState为null.