Справочный модуль Dagger из дочернего класса во время выполнения
У меня есть Android библиотеки LBase, L1, L2 с зависимостями, как LBase->L1 и LBase -> L2. И Android-приложения А1, построенные из L1 и A2, построенные из L2
В LBase
public interface iA {
}
public A implements iA {
}
@Component(modules = ModuleBase.class)
public interface BaseComponent {
iA getA()
}
@Module
public class ModuleBase.class {
@Provides
public iA createA() {
return new A();
}
}
В L1
public class A1 implements iA {
}
@Module
public class ModuleL1 extends ModuleBase {
@Provides
public iA createA() {
return new A1();
}
}
В L2
public class A2 implements iA {
}
@Module
public class ModuleL2 extends ModuleBase {
@Provides
public iA createA() {
return new A2();
}
}
Кажется, ModuleBase.class не может быть интерфейсом или абстрактным классом, поэтому я ищу помощи для достижения того же.
По сути, я хочу предоставить модуль имплементации в LBase (вместо ModuleBase.class) во время выполнения либо в "ModuleL1.class", либо в "ModuleL2.class" в A1 или A2 соответственно.