Activity正常情况下生命周期回调方法:
异常情况
- 系统的配置发生改变
- 内存不足
2个异常方法
- onSaveInstanceState: 保存Activity当前的状态信息,可以在这个方法中去存储一些数据,以便重建之后,可以直接去恢复这些数据
- onRestoreInstanceStace 在Activity重建之后,系统会自动调用该方法。Activity会通过上一个onSaveInstanceState 保存的Bundle对象,作为参数传递给onRestoreInstanceStace 方法,同时也会传递给onCreate 方法。所以可以在onCreate和onRestoreInstanceStace 方法来判断,该Activity是否被重新创建。不同点:onCreate方法需要对Bundle参数对象进行非空判断,但是在onRestoreInstanceStace 中不需要进行Bundle的非空判断,
这2个方法是系统在自动调用的,在出现异常情况下终止才会被调用。
总结:
- Activity正常启动:onCreate-onStart-onResume
- 点击back键回退:onPause-onStop-onDestroy
- 打开新的Activity:onPause-onStop
- Activity异常:onSaveInstanceState来保存数据
- Activity重新创建:调用onRestoreInstanceStace