Если я использую кинжал, как я могу заменить привязки, предоставленные sdk для интерфейса
Пример:
interface Dependency {}
class DefaultSDKDependencyImpl implements Dependency{}
@Module
class sdkModule1 {
@Binds dependency bindsDependency(DefaultSDKDependencyImpl x);
}
@Componet
sdkComponent(includes = {sdkmodule1, sdkmodule2}) {}
Если привязка для интерфейса зависимости уже существует, компонент SDK, как я могу заменить его на CustomDependencyImpl?
Опции, которые я знал:
1) Расширение sdkmodule1 (не рекомендуется документацией https://google.github.io/dagger/testing)
2) Создание пользовательского компонента без включения sdkmodule на стороне клиента, этот подход может не сработать для нас, поскольку sdk мог бы включать этот модуль в другие зависимости модуля, такие как
@Module(includes=sdkmodule1)
sdkmodule2 {}
Есть ли какое-то решение для этого?