1.1 Activity的生命周期全面分析

1. 典型情况下生命周期分析

问题:

FirstActivity 启动 SecondActivity,请问是 SecondActivity 的 onResume 和FirstActivity 的 onPause 那个先执行?

答案从AMS中可以找到,测试如下

FirstActivity onPause
SecondActivity onCreate
SecondActivity onStart
SecondActivity onResume
FirstActivity onStop
  • SecondActivityonResume 发生在 FirstActivityonPause 之后, onStop 之前。
    由此可得,为了让下一个页面启动快,尽量不要再 onPause 做耗时操作。

2. 异常情况下生命周期分析

  • onSaveInstanceStateonPause的先后不确定
  • onSaveInstanceState执行在onStop之前
    异常情况分类:
    情况一:资源相关的系统配置发生改变导致Activity被杀死并重建
    情况二:资源内存不足导致低优先级的Activity被杀死

避免系统配置变化导致Activity重建的方法:
给在manifest中给Activity添加 android:configChanges属性, android:configChanges支持很多参数,具体参考文档。

android:configChanges="orientation|screenSize"
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Android 的活动是可以包含用户界面的组件,主要用于与用户进行交互。 1 手动创建活动 手动创建活动可以加深对...
    deniro阅读 3,729评论 0 10
  • 这张图列出了Activity生命周期最主要的一些方法,启动后依次执行: onCreate –> onStart –...
    dazdingos阅读 947评论 0 0
  • 【Android Activity】 什么是 Activity? 四大组件之一,通常一个用户交互界面对应一个 ac...
    Rtia阅读 3,847评论 3 18
  • 在现在以及以后,我都会把知识点进行整理,为什么呢?虽然不整理也可以,用的时候去百度,百度?呵呵了吧大家,太菜了吧,...
    gehangAndWeb阅读 527评论 0 0
  • 今天是七夕节,朋友圈、微博、微信等宣传平台,无一例外的(简书也有)都是关于七夕的祝福、图片、秒拍等。 今天对我来说...
    Arrisa阅读 322评论 0 0