Android开发艺术笔记

一.Activity 生命周期与启动模式

  • 1.1 正常下的生命周期
    • 1.onCreate
    • 2.onRestart -> onStart
      从不可见到可见
    • 3.onStart
      从不可见到可见
    • 4.onResume
      从可见到可交互,
      onStart的时候Activity还在后台,onResume的时候Activity才到前台
    • onPause
      存储状态(数据),轻量级回收
      因为当新的Activity要启动时候,会先调用旧的Activity的onPause后再启动新Activity的onPause
    • onStop
      即将变为不可见,重量级回收
    • onDestroy
      表示Activity被销毁,做资源释放
    • 注意:
      如果新Activity采用透明主题,当前Activity不会调用onStop
  • 1.2 异常下的生命周期
    • 1.原因
      当系统资源不足或者配置发生改变的时候
    • 2.当Activity被杀死重建后
      被杀死Activity为A 新Activity为B (以下都采用A B代替)
      调用方法 A.onSaveInstanceState() -> B.onRestoreInstanceState()
      官方推荐 在onRestoreInstanceState 中恢复Activity的状态
      同时,正常情况下不会调用 onRestoreInstanceState
    • 3.原理
      当Activity被意外杀死时,调用onSaveInstanceState()保存数据,
      然后委托Window去保存数据,Window再拜托顶级容器,顶级容器再拜托子元素保存
    • 4.当内存不足导致Activity被杀死
      当内存不足时会按照:
      1.前台Activity 2.可见非前台 3.后台的顺序杀死Activity 回收资源
      所以,后台工作尽量放在Service中运行.
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容