小编sil*_*rol的帖子

Dagger 2.15-如何在Application类中注入依赖项

我无法在DaggerApplication类中注入依赖

相关类别如下

应用

class App : DaggerApplication() {

@Inject lateinit var mSomeClass : SomeClass // This is always NULL

override fun applicationInjector(): AndroidInjector<out DaggerApplication> {
    return DaggerAppComponent.builder().application(this).build()
 }


override fun onCreate() {
    super.onCreate()

    mSomeClass.initialize()  // mSomeClass is NULL
}
Run Code Online (Sandbox Code Playgroud)

零件:

 @Singleton
 @Component(modules = [
    AndroidSupportInjectionModule::class,
    AppModule::class,
    ViewModelFactoryModule::class,
    BuildersModule::class
  ])
interface AppComponent : AndroidInjector<DaggerApplication> {

@Component.Builder
interface Builder {

    @BindsInstance
    fun application(application: Application): Builder

    fun build(): AppComponent
    }
}
Run Code Online (Sandbox Code Playgroud)

AppModule类:

    @Module
    class AppModule {

    @Provides
    fun provideSomeClass(context: Context) = SomeClass(context = …
Run Code Online (Sandbox Code Playgroud)

android kotlin dagger-2

6
推荐指数
2
解决办法
2464
查看次数

标签 统计

android ×1

dagger-2 ×1

kotlin ×1