android艺术开发探索第一章 activity 生命周期解析
1.onStart和onStop是从是否可见(是否可以看见)角度来回调的,onResume和onPause是从是否在前台(是否可点击)角度来回调的。
2.一个activity启动另一个activity时一定先运行第一个activity的onPause方法然后运行另一个activity的onCreate,onStart,onResume方法。
论证方式,1.可以通过打log看两个activity的生命周期流程
2.通过源码在ActivityStack的resumeTopActivityInnerLocked方法中可以看出先调用onPause方法,在调用另一个activity的启动方法,详细见开发艺术探索第五页
所以根据以上流程,onPause方法不能做耗时操作,会影响后一个activity的启动。
3.内存不足或者其他意外情况导致activity终止运行并且有机会重新显示的情况下,系统会调用onSaveInstanceState方法保存当前状态。然后通过onRestoreInstanceState(或者oncreate也行,但需要判空)来恢复数据。