Android库.aar with dagger + application part取决于aar

时间:2018-03-08 16:17:56

标签: java android kotlin dagger-2 aar

我有一个关于匕首2的问题以及扩展某些组件或模块的可能性。

在我的情况下:我有一个库(.aar文件),它是应用程序的一部分。 在该文件中定义了具有一些模块的AARComponent,例如AARActivityBuilder。 并且AARComponent在Application类中初始化。

@Component(modules = arrayOf(AndroidSupportInjectionModule::class, AARActivityBuilder::class, AARModule::class)
interface ApplicationComponent {
    fun inject(app: AARApplication)
}

class AARApplication : Application() {
    override fun onCreate() {
        DaggerAARComponent
                    .builder()
                    .applicationModule(new AARModule(this))
                    .build()
                    .inject(this)
    }
}

但第二部分依赖于该库,我想添加一些仅在此处定义的模块(通常是活动)。 但我也希望使用库中的依赖项。

实施例: AAR文件有一个抽象类A。

导入aar库的应用程序具有从A类开始的B类。 所以我需要注释@ContributesAndroidInjector的方法,它返回类B,但.aar文件不知道类B.

我试图扩展AARComponent但是徒劳无功。此外,我试图创建新的@Component接口并添加AARComponent作为依赖项。但也没有奏效。也许我错过了什么或做错了。

有没有什么好方法可以做到这一点?

由于

0 个答案:

没有答案