文章 2023-07-03 来自:开发者社区

Android Jetpack 应用指南(四) - Lifecycle

Lifecycle诞生的背景 在 Android 应用程序的开发过程,我们会经常遇到这样一个需求,一个第三方或系统组件需要在Activity/Fragment的onCreate()方法中初始化,在onPause()方法中停止组件,在onDestroy()中对组件进行资源回收。这样的工作非常繁琐,会让组件与页面的耦合度增高,但是这些繁琐的工作却又不得不做,否则可能会造成内存泄露。 我们希望我们...

Android Jetpack 应用指南(四) - Lifecycle
文章 2023-06-14 来自:开发者社区

Jetpack 之 LifeCycle 组件原理解析

对于 LifeCycle 组件还不了解的同学,可以先阅读这篇文章: Jetpack 之 LifeCycle 组件使用详解 学习问题 LifeCycle 是如何监听到 Activity/Fragment 生命周期变化的? LifeCycle 如何将生命周期变化的事件分发给观察者的? 本文目录 一、四个重要的类 (一)Lifecycle Lifecycle 是一个抽象类...

Jetpack 之 LifeCycle 组件原理解析
文章 2023-06-14 来自:开发者社区

Jetpack 之 LifeCycle 组件使用详解

一、LifeCycle 简介 LifeCycle 是一个可以感知宿主生命周期变化的组件。常见的宿主包括 Activity/Fragment、Service 和 Application。LifeCycle 会持有宿主的生命周期状态的信息,当宿主生命周期发生变化时,会通知监听宿主的观察者。 LifeCycle 的出现主要是为了解决: 系统组件的生命周期与普通组件之间的耦合性。 系统组件指:...

Jetpack 之 LifeCycle 组件使用详解
文章 2023-04-21 来自:开发者社区

Android Jetpack系列之Lifecycle

Lifecycle介绍Lifecycle可以让某一个类变成Activity、Fragment的生命周期观察者类,监听其生命周期的变化并可以做出响应。Lifecycle使得代码更有条理性、精简、易于维护。Lifecycle中主要有两个角色:LifecycleOwner: 生命周期拥有者,如Activity/Fragment等类都实现了该接口并通过getLifecycle()获得Lifecycle,....

文章 2022-10-30 来自:开发者社区

Jetpack 系列(1)—— Lifecycle:生命周期感知型组件的基础

前言生命周期是 Activity 的核心特性之一,也是 Android 视图开发无法规避的重要问题。 为了更加健壮地处理生命周期问题,Google 的解决方案是将生命周期定义为一套标准的行为模式,即 Lifecycle 框架。 这种方式不仅简化了在 Activity / Fragment 等生命周期宿主中分发生命周期事件的复杂度,还提供了自...

Jetpack 系列(1)—— Lifecycle:生命周期感知型组件的基础
文章 2022-10-17 来自:开发者社区

2022 · 让我带你Jetpack架构组件从入门到精通 — Lifecycle

前言不是标题党!作者会尽力把文章写的更容易理解也更充满深度,本文也随作者的持续学习,持续更新,有问题欢迎在评论区提出~最近更新时间:2022-06-17介绍Jetpack的正式亮相是在2018年的Google I/O大会上,距今已经过去了四年,在当初的基础上又多了许多的新组件,每个组件都给开发者提供了一个标准, 能够帮助开发者减少样板代码并编写可在各种 Android 版本和设备中一致运行的 代....

2022 · 让我带你Jetpack架构组件从入门到精通 — Lifecycle
文章 2022-05-12 来自:开发者社区

【Jetpack】学穿:Lifecycle → 生命周期 (原理篇)(下)

看到这里应该能feel到为什么需要 可重入 的标记了,如果没有的话,可能产生sync()嵌套:moveToState(state1) → sync() → moveToState(state1) → sync() addObserver() → addObserver() → sync() → sync() addObserver() → ...

【Jetpack】学穿:Lifecycle → 生命周期 (原理篇)(下)
文章 2022-05-12 来自:开发者社区

【Jetpack】学穿:Lifecycle → 生命周期 (原理篇)(中)

⑥ Lifecycling类将传入的 LifecycleObserver 进行类型包装,生成一个新的 LifecycleEventObserver 实例,使得Event分发过程可以统一入口。直接关注 lifecycleEventObserver() :看下 FullLifecycleObserverAdapter:就是套了一层,...

【Jetpack】学穿:Lifecycle → 生命周期 (原理篇)(中)
文章 2022-05-12 来自:开发者社区

【Jetpack】学穿:Lifecycle → 生命周期 (原理篇)(上)

0x1、Lifecycle核心思想本质上是围绕着这两个设计模式进行的:模板模式 → 定义算法骨架,对外开放扩展点,基于 继承 关系实现,子类重写父类抽象方法;观察者模式 → 对象间定义一对多的依赖,当一个对象状态发生改变,依赖对象都会自动收到通知;对这两种模式不了解的强烈建议看下笔者之...

【Jetpack】学穿:Lifecycle → 生命周期 (原理篇)(上)
文章 2022-05-12 来自:开发者社区

【Jetpack】学穿:Lifecycle → 生命周期 (使用篇)(下)

运行结果如下:Activity中不需要重写一堆生命周期回调方法,只需添加一个观察者,从 继承 变成了 组合,代码精简效果不是一星半点。你可能不知道这有多妙,容杰哥娓娓道来,想想:现在有十个库,都要在生命周期里执行相关操作,按照原先的写法,得重写Activit...

【Jetpack】学穿:Lifecycle → 生命周期 (使用篇)(下)

本页面内关键词为智能算法引擎基于机器学习所生成,如有任何问题,可在页面下方点击"联系我们"与我们沟通。