首先,在Dagger 2中,有两种不同的注入方法可供选择:构造函数注入和字段注入。
class Example {
@Inject
ExampleDependency dependency;
@Inject
Example() {
// ...
}
}
然后,在注入对象时,Dagger 2将使用标记的构造函数创建并注入依赖项,如下所示:
Example example = DaggerExampleComponent.builder()
.exampleModule(new ExampleModule())
.build()
.getExample();
class Example {
@Inject
ExampleDependency dependency;
}
然后,在注入该对象时,Dagger 2将为其标记的字段注入依赖项,如下所示:
Example example = new Example();
DaggerExampleComponent.builder()
.exampleModule(new ExampleModule())
.build()
.inject(example);
在使用Dagger 2进行依赖注入时,请选择其中一种方法并且在整个应用程序中保持一致。