强制Dagger 2创建注入字段的实例

时间:2018-06-10 10:39:09

标签: android dagger-2

我对Dagger 2有疑问。 是否可以强制匕首在不调用组件及其构建器的情况下创建注入字段的实例?

例如,如果我们有这样的提供者:

@provider ClassA getClassA();

然后在其他课程中我可以直接使用它:

Class ClassB{
    //May be I can do something here to force dagger to create an instance of ClassA
    @inject ClassA classA;

    void doSth(){
        classA.prop1 ...
    }
}

注意:我无法访问ClassB中的dagger组件!

1 个答案:

答案 0 :(得分:1)

如果使用@Inject标记构造函数并从组件中获取ClassB,则这是自动的。

class ClassB{
    @Inject
    ClassB() {
    }

    @Inject ClassA classA;

    void doSth(){
        classA.prop1 ...
    }
}