Android Dagger - 动态功能模块无法从 AppComponent 注入

时间:2021-05-31 09:58:54

标签: android dagger-2

在:app 模块中

@Singleton
@Component(modules = [AppModule::class])
interface AppComponent {
    @Component.Factory
    interface Factory {
        fun create(@BindsInstance context: Context): AppComponent
    }
}    
@Module
class AppModule {
    @Singleton
    @Provides
    fun provideA() = A()
}

在动态功能模块中

@Component(
        dependencies = [AppComponent::class],
        modules = [FeatureModule::class]
)
interface FeatureComponent{
    @Component.Factory
    interface Factory {
        fun create(appComponent: AppComponent): FeatureComponent
    }

    fun inject(fragment: HomeFragment)

}
@Module
class FeatureModule {
}

在 HomeFragment 或 HomeViewModel 中,我无法注入对象 A(在 AppComponent 中的 AppModule 中提供)。 如何解决?

谢谢。

0 个答案:

没有答案
相关问题