dagger
文章平均质量分 87
fundroid
Android GDE(谷歌开发者专家)| 互联网大厂移动端架构师
展开
-
从 Compnent Tree 视角看 Dagger 到 Hilt 的演变
Dagger 的本质是一棵组件树,而 dagger.android 和 Hilt 的诞生目的,都是通过不同的手段降低组件树的构建成本,减少模板代码。原创 2023-07-11 09:00:00 · 533 阅读 · 0 评论 -
Dagger Hilt - ViewModel的依赖注入及实现原理
Dagger HiltHilt是谷歌最新发布的DI库,降低了Android中Dagger的使用成本,支持各种常见Android组件的注入,也包括我们常用的ViewModel。Dagger Hilt - Android官方推荐的依赖注入框架 一文中介绍了ViewModel的注入方法,使用起来非常简单:class ActivityViewModel @ViewModelInject constructor( private val repository: Repository, @Ass.原创 2020-07-04 22:30:08 · 7224 阅读 · 0 评论 -
Dagger Hilt - Android官方推荐的依赖注入框架
Dagger HiltAndroid端有不少DI框架可供选择 – 例如用于控件注入的ButterKnife、用于Kotlin的Koin等,但唯有Dagger才称得上是谷歌官方认可的DI方案。Dagger最早由Square开发,后被谷歌fork并升级为Dagger2,成为了Android官方推荐的DI最佳实践。Dagger较好地实现了JSR-330规范,虽然功能强大,但是无法很好地应对Android项目。谷歌随后推出dagger-android(及dagger-android-support),试图通.原创 2020-06-25 23:55:30 · 7648 阅读 · 3 评论 -
【Dagger】Component.Factory与Component.Builder的使用对比
Dagger 2.22 起引入了 @Component.Factory 可以取代@Component.Builder的使用,Factory在许多场景的上的使用相对于Builder会更简单。本文用对比的方式介绍@Component.Factory与 @Component.Builder在使用上的区别。依赖版本implementation 'com.google.dagger:dagger:...原创 2020-03-07 18:06:50 · 1563 阅读 · 2 评论 -
【Android】Dagger2 + MVVM
背景一个标准的Android的MVVM架构是分层规划实现的,各层之间有清晰的依赖关系。借助Dagger2完成MVVM各层所需的依赖注入,可以让项目结构变得更清爽和更可维护。虽然Dagger2有一定使用门槛,但是MVVM的项目结构大都相同,实现一个Dagger2+Retrofit2(+OkHttp3)+ViewModel 的最小构成实践,对其他类似项目具有一定参考意义。构成1. g...原创 2020-03-07 19:43:25 · 2086 阅读 · 2 评论 -
Guice vs Dagger
Guice和Dagger都是Java的依赖注入框架,他们有很多相似性,所以放到一起比较一下:相同点: 基于Java 由Google维护(Dagger最早是Square开发的,Dagger2已经过继给了Google) 兼容JSR-330注解规范 因为兼容JSR-330,所以需要修改源码添加注解实现注入,相对于Spring通过外部配置文件的方式对源码有侵入性 不同点 Guic...原创 2020-02-02 17:39:01 · 1301 阅读 · 0 评论