Android LifecycleRegistry

简介

LifecycleRegistry 适用于监听生命周期的注册组件,主要是了避免在Activity 和 Fragment的生命周期方法中实现依赖组件的操作, 以观察者身份介入当中,使其依赖组件能在Activity 或 Fragment的当前生命周期状态自动调整其行为,又不会Activity 或 Fragment太耦合,使其代码分工明确,理解清晰,维护方便。

状态和事件

构成 Android Activity 生命周期的状态和事件
图中是构成 Android Activity 生命周期的状态和事件,在Activity 的生命周期状态变化和事件触发都是根据这张图来变化的。

嵌套事件

  • addObserver嵌套
  • moveToState嵌套

addObserver 是通过mAddingObserverCounter变量标记嵌套个数
moveToState 嵌套 是状态迁移时会发生嵌套,mHandlingEvent来表示正在处理事件中, mNewEventOccurred代表发生了新的事件。

以上是个人比较关心的两个点,特此单独列出来记录,具体源码分析可以移驾尊步下面文章

Android架构组件(2)LifecycleRegistry 源码分析


版权声明:本文为jsm1010原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。