Size: a a a

2019 May 20

AK

Alexey Kalyaganov in Dagger 2
И ещё один нюанс
источник

AK

Alexey Kalyaganov in Dagger 2
Я в модуле помечаю зависимость @Singleton

В компоненте ничего не указываю. Создаются объекты где эта зависимость не синглтон, т.е. на каждый объект по зависимости. И только когда я указываю эту зависимость в компоненте, он начинает быть настоящим синглтоном. Это правильное поведение?
источник

SV

Sviat Volkov in Dagger 2
Если вы в компоненте не указываете скоуп имея провайд методы со скоупом то оно не должно собираться
источник

AK

Alexey Kalyaganov in Dagger 2
у компонента указывается скоуп singleton, у провайд метода тоже. Но если в компоненте не указать метода с определенным типом возвращаемого объекта, то скоум не учитывается
источник

AG

Artem Gilmudinov in Dagger 2
Alexey Kalyaganov
у компонента указывается скоуп singleton, у провайд метода тоже. Но если в компоненте не указать метода с определенным типом возвращаемого объекта, то скоум не учитывается
А inject делаете из этого же компонента или из дочернего?
источник

AK

Alexey Kalyaganov in Dagger 2
Artem Gilmudinov
А inject делаете из этого же компонента или из дочернего?
Из дочернего. Дочерний компонент создаю с использованием родительского, который в единственном экземпляре
источник

AG

Artem Gilmudinov in Dagger 2
Alexey Kalyaganov
Из дочернего. Дочерний компонент создаю с использованием родительского, который в единственном экземпляре
В этом и беда. Дочерний не видит зависимости родительского, если не прописать их в интерфейсе родителя.
источник

AK

Alexey Kalyaganov in Dagger 2
Artem Gilmudinov
В этом и беда. Дочерний не видит зависимости родительского, если не прописать их в интерфейсе родителя.
Ого, вот это да..
источник

AK

Alexey Kalyaganov in Dagger 2
нужно теперь все перепроверить получается..
источник

AK

Alexey Kalyaganov in Dagger 2
Но если бы дочерний был Subcomponent, то все ок было бы?
источник

AG

Artem Gilmudinov in Dagger 2
Alexey Kalyaganov
Ого, вот это да..
Но это легко объяснимо. В dependencies то вы передаете интерфейс, а не имплементацию компонента. А раз в интерфейсе нет этой зависимости, то взять ее не откуда.
источник

AG

Artem Gilmudinov in Dagger 2
Alexey Kalyaganov
Но если бы дочерний был Subcomponent, то все ок было бы?
Да.
источник

AK

Alexey Kalyaganov in Dagger 2
Artem Gilmudinov
Но это легко объяснимо. В dependencies то вы передаете интерфейс, а не имплементацию компонента. А раз в интерфейсе нет этой зависимости, то взять ее не откуда.
В если в обратную сторону? Какой может быть кейс чтобы использовать синглтон только в рамках родительского компонента?
источник

AK

Alexey Kalyaganov in Dagger 2
я не жалуюсь, но это путает)
источник

AG

Artem Gilmudinov in Dagger 2
Так устроен даггер. И кажется все логично.
источник

AK

Alexey Kalyaganov in Dagger 2
Я читал ман когда-то давно и об этом совсем забыл. А так с наскоку думал что вот есть модуль и все зависимости провайдятся из него в соответствии со скоупом. Мне тоже это логично казалось)
источник

AK

Alexey Kalyaganov in Dagger 2
Ок. спасибо👍
источник

Y

Yank in Dagger 2
источник

Y

Yank in Dagger 2
так делать корректно в фрагменте?

https://gist.github.com/JavaYank/9c632a60732f750273a696198e5b9f43
источник

Y

Yank in Dagger 2
Всем привет)
источник