Ответ
В Dagger объект можно добавить через модуль (@Module) с помощью метода, аннотированного @Provides.
Пример:
@Module
class AppModule {
@Provides
fun provideSomeObject(): SomeObject {
return SomeObject()
}
}
Для внедрения через конструктор пометьте класс @Inject:
class SomeObject @Inject constructor()
Затем подключите модуль в компонент:
@Component(modules = [AppModule::class])
interface AppComponent
Ключевые моменты:
@Providesметоды должны быть открытыми (public)- Тип возвращаемого значения определяет, что предоставляет метод
- Для внедрения зависимостей используйте
@Injectв месте, где нужен объект