onSaveInstanceState和onRestoreInstanceState(给当前
MainActivity配置了singleInstance)
当按下home键的时候,调用如下:
12-08 /yyy: MainActivity-- onPause
12-08 /yyy: MainActivity-- onSaveInstanceState(Bundle outState)
12-08 /yyy: MainActivity-- onStop
再次点击桌面icon开启activity,执行如下:
12-08 /yyy: MainActivity-- onNewIntent 获取在onSaveInstanceState保存的数据null(标准模式不执行该方法)
12-08 /yyy: MainActivity-- onRestart
12-08 /yyy: MainActivity-- onStart
12-08 /yyy: MainActivity-- onResume
发现,并未执行onRestoreInstanceState,由此得出结论 onSaveInstanceState和onRestoreInstanceState并不总是成对出现的。 onNewIntent并不能获取save的值,那么存在onSaveInstanceState里面的值,怎么样才能取出来呢
当横屏切换到竖屏的时候:
12-08 /yyy: MainActivity-- onPause
12-08 /yyy: MainActivity-- onSaveInstanceState(Bundle outState)
12-08 /yyy: MainActivity-- onStop
12-08 /yyy: MainActivity-- onDestroy
12-08 /yyy: MainActivity-- onCreate获取在onSaveInstanceState保存的数据testStr
12-08 /yyy: MainActivity-- onCreate() configChange = 0
12-08 /yyy: MainActivity-- onStart
12-08 /yyy: MainActivity-- onRestoreInstanceState(Bundle outState) savedInstanceState = testStr
12-08 /yyy: MainActivity-- onResume
由此得出结论,当执行了 onSaveInstanceState之后,只要放进去的有数据,那么可以在onCreate和onRestoreInstanceState的时候,获取存入的数据
当按下back键的时候:
12-08 /yyy: MainActivity-- onPause
12-08 /yyy: MainActivity-- onStop
12-08 /yyy: MainActivity-- onDestroy
会发现并未执行onSaveInstanceState方法
当按下home键的时候,调用如下:
12-08 /yyy: MainActivity-- onPause
12-08 /yyy: MainActivity-- onSaveInstanceState(Bundle outState)
12-08 /yyy: MainActivity-- onStop
再次点击桌面icon开启activity,执行如下:
12-08 /yyy: MainActivity-- onNewIntent 获取在onSaveInstanceState保存的数据null(标准模式不执行该方法)
12-08 /yyy: MainActivity-- onRestart
12-08 /yyy: MainActivity-- onStart
12-08 /yyy: MainActivity-- onResume
发现,并未执行onRestoreInstanceState,由此得出结论 onSaveInstanceState和onRestoreInstanceState并不总是成对出现的。 onNewIntent并不能获取save的值,那么存在onSaveInstanceState里面的值,怎么样才能取出来呢
当横屏切换到竖屏的时候:
12-08 /yyy: MainActivity-- onPause
12-08 /yyy: MainActivity-- onSaveInstanceState(Bundle outState)
12-08 /yyy: MainActivity-- onStop
12-08 /yyy: MainActivity-- onDestroy
12-08 /yyy: MainActivity-- onCreate获取在onSaveInstanceState保存的数据testStr
12-08 /yyy: MainActivity-- onCreate() configChange = 0
12-08 /yyy: MainActivity-- onStart
12-08 /yyy: MainActivity-- onRestoreInstanceState(Bundle outState) savedInstanceState = testStr
12-08 /yyy: MainActivity-- onResume
由此得出结论,当执行了 onSaveInstanceState之后,只要放进去的有数据,那么可以在onCreate和onRestoreInstanceState的时候,获取存入的数据
当按下back键的时候:
12-08 /yyy: MainActivity-- onPause
12-08 /yyy: MainActivity-- onStop
12-08 /yyy: MainActivity-- onDestroy
会发现并未执行onSaveInstanceState方法