我有一个关于匕首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作为依赖项。但也没有奏效。也许我错过了什么或做错了。
有没有什么好方法可以做到这一点?
由于