Android 异常情况下的生命周期

正常情况下的生命周期比较好理解。 onCreate onDistory 对应开始和结束 onStart onStop 对应activity可见时情况,没有获取焦点 onResume onPause 可见并获取焦点

正常情况下的生命周期,两两对应很好理解。

但是在日常使用中我们经常会遇到一些异常情况,比如资源配置发生变化或者内存不足被杀死。

1 资源配置发生变化导致activity会被销毁重建 这种情况一般会发生在横竖屏切换时

Android 异常情况下的生命周期

onSaveInstanceState onRestoreInstanceState 方法会做一些保存和恢复的工作。这两个方法只有在异常销毁的时候才会去调用,正常销毁系统不会调用。

2 资源内存不足导致优先级低的activity被销毁 其实这种情况下和1的生命周期是一样的

我们可以了解下activity的优先级,从高到低可以分为三种: 1 前台activity 正在前台显示和用户交互 2 可见非前台 比如activity弹出了一个dialog 3 后台activity 例如用户点击home退出

转载于:https://my.oschina.net/kipeng/blog/633727