Size: a a a

2020 January 21

М

Михаил in Dagger 2
Игорь Казаков
все уничтожено
А можно код как пересоздается?
источник

АЕ

Алексей Ершов in Dagger 2
Или у вас зависимость синглтон и без даггера, вроде app context
источник

ДГ

Денис Габышев in Dagger 2
Ilya Gulya
Скоуп делает только одно - кеширует зависимость в рамках компонента
что происходит, когда фича передает зависимость другой фиче, и потом компоненту этой фичи обнуляют, а потом заново где-то в другом месте используют?

по хэш-коду смотрел, и там было так, что первая созданная зависимость используется везде, где потом пересоздается компонента. но, когда пересоздается компонента, зависимость новая тоже создается, но вместо того, чтобы использовать новую зависимость он использует зависимость, которая была создана первой.
источник

AK

Alexey Kalyaganov in Dagger 2
Денис Габышев
что происходит, когда фича передает зависимость другой фиче, и потом компоненту этой фичи обнуляют, а потом заново где-то в другом месте используют?

по хэш-коду смотрел, и там было так, что первая созданная зависимость используется везде, где потом пересоздается компонента. но, когда пересоздается компонента, зависимость новая тоже создается, но вместо того, чтобы использовать новую зависимость он использует зависимость, которая была создана первой.
Вангую что хэш обьекта смотришь в инжекнутом обьекте в презентере мокси или во вью модели
источник

ДГ

Денис Габышев in Dagger 2
Alexey Kalyaganov
Вангую что хэш обьекта смотришь в инжекнутом обьекте в презентере мокси или во вью модели
смотрел через Log.d при вызове метода зависимости внутри самого метода. и якобы через finalize смотрел как garbage collector его чистит (тоже через Log.d). но, в stackoverflow пишут, что так смотреть не совсем правильно. работу gc типа вообще невозможно отследить правильно.
источник

IG

Ilya Gulya in Dagger 2
Денис Габышев
смотрел через Log.d при вызове метода зависимости внутри самого метода. и якобы через finalize смотрел как garbage collector его чистит (тоже через Log.d). но, в stackoverflow пишут, что так смотреть не совсем правильно. работу gc типа вообще невозможно отследить правильно.
Ну вообще, можно, через phantom reference 🙂
источник

IG

Ilya Gulya in Dagger 2
Денис Габышев
что происходит, когда фича передает зависимость другой фиче, и потом компоненту этой фичи обнуляют, а потом заново где-то в другом месте используют?

по хэш-коду смотрел, и там было так, что первая созданная зависимость используется везде, где потом пересоздается компонента. но, когда пересоздается компонента, зависимость новая тоже создается, но вместо того, чтобы использовать новую зависимость он использует зависимость, которая была создана первой.
Если второй компонент не пересоздается, он будет держать ссылку на первый и на его зависимость (если во втором компоненте есть scoped зависимость которая использует зависимость из первого компонента)
источник

ДГ

Денис Габышев in Dagger 2
Ilya Gulya
Если второй компонент не пересоздается, он будет держать ссылку на первый и на его зависимость (если во втором компоненте есть scoped зависимость которая использует зависимость из первого компонента)
а если такая система? внешняя фича постоянно смотрит на interactor child фичи, но постоянно открывает и закрывает fragment, и когда фрагмент закрывается component обнуляется (component = null). а когда открывается child фича, то компонент заново создается, но interactor тоже создается заново, но почему-то он не использует новый interactor, а использует самый первый interactor, а новые через некоторое время чистит.

это из-за того, что система держит ссылку на первый interactor? поэтому он создает новый, через некоторе время понимает, что есть старая ссылка, и отбрасывает новую?
источник

D

Dmitry in Dagger 2
Когда мы используем dependencies у компонента с интерфейсом, которые реализуют например 2 разных компонента. Как он определяет, какую реализацию использовать в зависимостях?
источник

Y

Yanis in Dagger 2
даггер не даст такое собрать
источник

IG

Ilya Gulya in Dagger 2
Денис Габышев
а если такая система? внешняя фича постоянно смотрит на interactor child фичи, но постоянно открывает и закрывает fragment, и когда фрагмент закрывается component обнуляется (component = null). а когда открывается child фича, то компонент заново создается, но interactor тоже создается заново, но почему-то он не использует новый interactor, а использует самый первый interactor, а новые через некоторое время чистит.

это из-за того, что система держит ссылку на первый interactor? поэтому он создает новый, через некоторе время понимает, что есть старая ссылка, и отбрасывает новую?
Ничего не понятно 😅
Вы можете просто создать gist и в нём сделать набросок вашей ситуации?
И комментариями указать что у вас не пересоздается, хотя должно.
источник

ДГ

Денис Габышев in Dagger 2
Ilya Gulya
Ничего не понятно 😅
Вы можете просто создать gist и в нём сделать набросок вашей ситуации?
И комментариями указать что у вас не пересоздается, хотя должно.
отправлю как-нибудь репозиторий с магией 👌
источник

IG

Ilya Gulya in Dagger 2
Денис Габышев
отправлю как-нибудь репозиторий с магией 👌
Ну или так 🙃
источник
2020 January 26

CC

Constantine Cerberus in Dagger 2
Такой вот вопрос
Имеется компонент и subcomponent
На одном apoScope и на сабкомпонент main screen scope
Но при вращении экрана инит сообщает что объект создаётся по новому тот что на main screen scope
источник

VP

Vitaly Peryatin in Dagger 2
Какой уровень логики вы помечатете скоупами: Repository или ViewModels/Presenters?
источник

VP

Vitaly Peryatin in Dagger 2
Constantine Cerberus
Такой вот вопрос
Имеется компонент и subcomponent
На одном apoScope и на сабкомпонент main screen scope
Но при вращении экрана инит сообщает что объект создаётся по новому тот что на main screen scope
Ты хранишь где-нибудь созданный тобой компонент или заново создаёшь?
источник

CC

Constantine Cerberus in Dagger 2
Vitaly Peryatin
Ты хранишь где-нибудь созданный тобой компонент или заново создаёшь?
Угу в ViewModel  но прикол в том что сам объект отрабатывает на ура и при повороте экрана (ставлю delay в функции внутри ) он отрабатывает как положено и возвращает данные в view model как положено как будто и не пересоздавался.
Вот интересно как тама получается инит работает и объект тот же .(и do там через интерфейс
источник

VP

Vitaly Peryatin in Dagger 2
Constantine Cerberus
Угу в ViewModel  но прикол в том что сам объект отрабатывает на ура и при повороте экрана (ставлю delay в функции внутри ) он отрабатывает как положено и возвращает данные в view model как положено как будто и не пересоздавался.
Вот интересно как тама получается инит работает и объект тот же .(и do там через интерфейс
Его нужно в синглтон хранить и самостоятельно ручками обрабатывать ЖЦ
источник

CC

Constantine Cerberus in Dagger 2
Vitaly Peryatin
Его нужно в синглтон хранить и самостоятельно ручками обрабатывать ЖЦ
Все похоже нашел причину забыл скоуп указать в котором он живёт,
Кодить наночь зло . Thx 👍
источник
2020 January 29

DK

Damir Kadyrgulov in Dagger 2
Ребята, плиз, тыкните носом в пример проекта список + детализация на Dagger + MVP
источник