技术栈
dagger
愤怒的代码
12 天前
android
·
dagger
深入解析 SystemUI 依赖注入:Dagger2 实践剖析
在前面文章部分,我们夯实了 Dagger2 的理论基础,并对比了 Hilt 的标准化方案。现在,我们将直面 SystemUI 的复杂代码库,揭示 Google 工程师如何利用原生 Dagger2 打造出其多层级、高隔离性的依赖注入架构。
愤怒的代码
14 天前
android
·
dagger
深入解析 SystemUI 依赖注入:Dagger2 与 Hilt 核心机制重温
SystemUI 作为 Android 系统的“门面”,管理着状态栏(StatusBar)、通知面板(NotificationPanel)、锁屏(Keyguard)等核心交互,其代码库庞大且状态复杂。为了解耦各个功能模块,Google 在 SystemUI 中深度应用了 Dagger2 进行依赖注入(Dependency Injection, DI)。
bytebeats
8 个月前
android
·
gradle
·
dagger
使用Dagger SPI 查找非必要组件依赖项
许多 Android 开发人员使用 Dagger 或其"包装器"Hilt 进行依赖注入. 但使用Dagger SPI的人并不多. 这种机制为我们提供了访问依赖图谱的权限, 允许我们添加自己的图检查以及更多. 在本文中, 我将以查找未使用的组件依赖为例, 讨论如何使用 Dagger SPI. 读完本文后, 你就能找到它们了. 或者, 如果你愿意, 也可以编写自己的依赖图谱检查. 或者随心所欲.
cding
2 年前
android
·
dagger
Dagger2的使用
Dagger2是google的一款依赖注入框架,前身是square公司开发的dagger1,适用于Android和Java应用程序的开发。 Dagger2提供给Java和Android使用,主要用于模块间解耦、提高代码的可维护性和代码的可测试性,是一款依赖注入框架,使用了IOC(控制反转)的思想,在编译阶段使用APT或kapt利用注解生成Java代码,然后结合部分手写代码来完整依赖注入工作。Dagger1通过反射实现的,而Dagger2则是编译阶段生成代码实现。
MinQ
2 年前
dagger
Android Dagger2简单使用
Dagger是一个很古老的框架了,当初诞生时候,主要是为了模块之间的解耦。本篇文章主要介绍一下如何使用dagger2,后续会介绍其原理。
我是有底线的