2020-12-10 Jetpack新成员,一篇文章带你玩转Hilt和依赖注入

hilt是一个依赖注入框架,其参照了dagger2的设计,但api要比dagger2简化。推荐用来管理mvvm的仓库层(即vm依赖层)。注解保留至class文件期,并在编译时生成依赖注入代码。hilt拥有作用域注解,可以清晰划分每个类的职责范围,并且提供了Android独有的API,用以提供一些用户无法自己创建的实例(例如context)。hilt作用域大致分为App,ActivityRetained,Activity,Service,View,Fragment,FragmentView,它们之间存在包含关系。由于不依赖反射,采取编译时注入,hilt的执行效率比较高。除了内置的注入点,也可以自定义注入点。contentProvider由于可能在Application的onCreate()之前被调用,所以不支持内置注入,此时需要自定义注入点。然而正由于这个特性,contentProvider可以用来做app的加速启动,例如jetpack中的startUp。
https://juejin.cn/post/6902009428633698312
Jetpack新成员,一篇文章带你玩转Hilt和依赖注入

你可能感兴趣的:(2020-12-10 Jetpack新成员,一篇文章带你玩转Hilt和依赖注入)