标签:style color io strong sp 数据 on cti line
测试方式很简单,只要想象一下就明白了:
经测试,onSaveInstanceState会被调用的条件是:
条件一.从当前activityA启动ActivityB时,在onPause之后onStop之前调用,
条件二.当前activtiy未被主动销毁(比如调用finish()),而是被压入栈中。
经测试:onRestoreInstanceState调用的条件
onSaveInstanceState被调用是为了保存数据,然而这并不意味着onRestoreInstanceState会被调用,那么,什么时候会被调用呢。
前面说过,当前ActivityA启动了ActivityB时onSaveInstanceState会被调用,及状态被保存了,而且Activity被压在栈中了,只有ActivityB活跃着,据此暗示,当ActivityB发生意外时ActivityA中的onRestoreInstanceState。
测试结果说明了这一点,但是,ActivityB的意外事故严重性也决定了ActivityA中的onRestoreInstanceState,意外越严重的话,app直接闪退,因此不会调用.
所以得出如下条件:
条件一:顶层Activity发生警告性,低级别异常,未导致app退出
条件二:activity必须违背kill掉
onRestoreInstanceState和onSaveInstanceState
标签:style color io strong sp 数据 on cti line
原文地址:http://my.oschina.net/u/2256215/blog/337537