layout: post title: “2019-07-16-dagger.markdown” date: 2019-07-16 12:11:30 +0800

  1. @inject 提供一个对象的生成方法,会自动生成**_factory,构建方法需要Provider或者直接 使用成员变量new出来. **_factory的方法都是固定的.

  2. @provide **_Provide **Factory 根据本类提供成员变量的方法 provide的注解必须声明在module中(带有@module的class)

  3. @Component @Component(modules = DripCoffeeModule.class) interface CoffeeShop { 声明为component的接口,带有一个module的依赖 Dagger会为这个接口生成一个类.可以通过builder获取实例 这个interface会有一些奇怪的方法


参考文章: https://www.jianshu.com/p/daaee38b0cfe