在Android库项目中使用Dagger 2

时间:2018-11-26 13:01:23

标签: android dagger-2 android-library dagger

我正在开发一个void MainWindow::on_pushButton_clicked() { Dialog sw; connect(this, &MainWindow::send, &sw, &Dialog::receive); emit send(); sw.setModal(true); sw.exec(); } 项目,并希望集成Dialog::receive。 目前,仅在Android Library项目中使用Dagger,而不十分确定如何在Dagger 2项目中使用Dagger。

对于Application项目,请始终像这样使用它:

AppComponent.class

Application

AppModule.class

Library

ActivityBuilderModule.class

@Singleton
@Component(modules = [AndroidSupportInjectionModule::class, AppModule::class, ActivityBuilderModule::class])
interface AppComponent {

    @Component.Builder
    interface Builder {
        @BindsInstance
        fun application(application: Application): Builder

        fun build(): AppComponent
    }

    fun inject(app: App)
}

App.class

@Module
class AppModule {

    @Provides
    @Singleton
    fun provideContext(application: Application): Context = application

}

我如何在@Module abstract class ActivityBuilderModule { @ContributesAndroidInjector(modules = [MainActivityModule::class]) abstract fun bindMainActivity(): MainActivity } 项目中使用它?

0 个答案:

没有答案