使用新的(2.10中的)dagger.android类,我正在尝试使用依赖于其他模块的Subcomponent来注入内容,并且因此具有带有这些模块设置器的Builder。 https://google.github.io/dagger/android.html上的文档描述了这一点,但并不清楚如何实际编写和/或调用这些setter。
从上面的链接中引用:
AndroidInjection.inject()从应用程序获取DispatchingAndroidInjector,并将您的activity传递给inject(Activity)。 DispatchingAndroidInjector查找您的activity类的AndroidInjector.Factory(即YourActivitySubcomponent.Builder),创建AndroidInjector(即YourActivitySubcomponent),并将您的activity传递给inject(YourActivity)。
在我的看来,为了能够调用Builder的setters,我需要进入某个位置并确保Builder具有所有必要的数据?我看到的问题是,在运行时,当AndroidInjector调用生成的Subcomponent的builder时,我会得到一个IllegalStateException:MODULE必须设置。
所涉及的子组件实际上是针对片段而不是活动,但我不确定这是否重要。有关如何执行此操作的任何想法?
从上面的链接中引用:
AndroidInjection.inject()从应用程序获取DispatchingAndroidInjector,并将您的activity传递给inject(Activity)。 DispatchingAndroidInjector查找您的activity类的AndroidInjector.Factory(即YourActivitySubcomponent.Builder),创建AndroidInjector(即YourActivitySubcomponent),并将您的activity传递给inject(YourActivity)。
在我的看来,为了能够调用Builder的setters,我需要进入某个位置并确保Builder具有所有必要的数据?我看到的问题是,在运行时,当AndroidInjector调用生成的Subcomponent的builder时,我会得到一个IllegalStateException:MODULE必须设置。
所涉及的子组件实际上是针对片段而不是活动,但我不确定这是否重要。有关如何执行此操作的任何想法?