【发布时间】:2017-08-04 22:49:51
【问题描述】:
我正在尝试使用 Dagger 2.11 的 Android Injector 注入模拟。
在使用 Android Inject 之前,我曾经更改 Application 类中的注入器,以便可以注入模拟。像这样:
class EGOApplication : Application() {
lateinit var injectorComponent: InjectorComponent
override fun onCreate() {
super.onCreate()
injectorComponent = DaggerInjectorComponent.builder()
.appModule(AppModule(this))
.build()
}
在我的测试中,我曾经像这样更改注入器组件:
app.injectorComponent = DaggerMockComponent.builder()
.mockModule(MockModule(app))
.build()
然后我可以从 MockModule 注入我的模拟。
但现在我在本教程中使用 Android Injector:https://medium.com/@iammert/new-android-injector-with-dagger-2-part-1-8baa60152abe
嗯...现在我像这样注入我的依赖项:
override fun onCreate(savedInstanceState: Bundle?) {
AndroidInjection.inject(this)
}
所以我的方法不再适用了... 如何从我的 MockModule 中创建 Dagger 注入器依赖项?
感谢任何帮助!
【问题讨论】:
-
嘿,我也有同样的问题。你找到什么方法了吗?
-
是的,我做到了。检查我的答案。
标签: android dependency-injection kotlin dagger-2 dagger