Slide 63
Slide 63 text
class MyApplication : Application(), ComponentProvider {
override val component by lazy {
DaggerApplicationComponent.create()
}
}
interface ComponentProvider {
val component: ApplicationComponent
}
val Activity.injector get() =
(application as ComponentProvider).component
class MyActivity : AppCompatActivity() {
private val businessRunner by lazy { injector.businessRunner }
}
val Activity.injector get() =
(application as ComponentProvider).component
class MyApplication : Application(), ComponentProvider {
override val component by lazy {
DaggerApplicationComponent.create()
}
}
interface ComponentProvider {
val component: ApplicationComponent
}