Справочный модуль 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 соответственно.

0 ответов

Другие вопросы по тегам