Size: a a a

2020 October 14

RC

Roman Chumachenko in Dagger 2
Artem Gilmudinov
Не очень понятно почему это не может быть синглтоном. Если не авторизован пользователь, то возвращайте просто null в качестве аккаунта.
Синглтон не пойдет дагеровский - там всякие okhttpbuilder и прочее
источник

AG

Artem Gilmudinov in Dagger 2
А почему okhttpbuilder не синглтон?
источник

RC

Roman Chumachenko in Dagger 2
Artem Gilmudinov
А почему okhttpbuilder не синглтон?
Так я и говорю, что он синглтон. При перелогине я его выкидывать не хочу
источник

AG

Artem Gilmudinov in Dagger 2
А зачем выкидывать сущность вашу отвечающую за логин? Сделайте внутри нее небольшой стейт и все.
источник

AG

Artem Gilmudinov in Dagger 2
Иначе вы так иерархию компонентов нормально не построете
источник

RC

Roman Chumachenko in Dagger 2
Artem Gilmudinov
А почему okhttpbuilder не синглтон?
Мне все равно нужны новые обьекты, которые зависят от данных аккаунта
источник

AG

Artem Gilmudinov in Dagger 2
Я думаю вряд ли у вас такое получится сделать.
Singleton -> AuthUser -> Activity.
Singleton -> Activity
У вас получается вот такая иерархия какая-то. Представьте что вам что-то надо будет в Activity из AuthUser. Как вы это достанете во втором кейсе?
источник

AG

Artem Gilmudinov in Dagger 2
Второй случай соответствует кейсу незалогиненного пользователя
источник

AG

Artem Gilmudinov in Dagger 2
Проще внутрь ваших сущностей нуждающихся в логине, пробрасывать какой-нибудь AuthService и использовать его.
источник

RC

Roman Chumachenko in Dagger 2
Artem Gilmudinov
Проще внутрь ваших сущностей нуждающихся в логине, пробрасывать какой-нибудь AuthService и использовать его.
Угу, окей, подумаю об этом, спасибо
источник
2020 October 15

VM

Vadim Morozov in Dagger 2
если я правильно понял что он ругается на отсутствие аннотации Provides в BiometricPromptAbs
но ругается на компонент который вообще не зависел от него.
источник

VM

Vadim Morozov in Dagger 2
Переслано от Vadim Morozov
Даггер выдаёт следующую ошибку
/home/sai/android/app/di/ViewComponent.java:8: error: [Dagger/MissingBinding] com.sai.applock.widget.biometric.BiometricPromptAbs cannot be provided without an @Provides-annotated method.
public abstract interface ViewComponent {
               ^
     com.sai.applock.widget.biometric.BiometricPromptAbs is injected at
         com.sai.applock.lock.LockableActivity.biometricPrompt
     com.sai.android.features.root.RootActivity is injected at
но у меня есть анотация в моём компоненте или тут что то помимо ему не нравится?
источник

S

Sergey S. in Dagger 2
Vadim Morozov
Переслано от Vadim Morozov
Даггер выдаёт следующую ошибку
/home/sai/android/app/di/ViewComponent.java:8: error: [Dagger/MissingBinding] com.sai.applock.widget.biometric.BiometricPromptAbs cannot be provided without an @Provides-annotated method.
public abstract interface ViewComponent {
               ^
     com.sai.applock.widget.biometric.BiometricPromptAbs is injected at
         com.sai.applock.lock.LockableActivity.biometricPrompt
     com.sai.android.features.root.RootActivity is injected at
но у меня есть анотация в моём компоненте или тут что то помимо ему не нравится?
можешь показать компоненту? Inject есть у конструктора?
источник
2020 October 16

ИЧ

Иван Чепёлкин... in Dagger 2
Привет! Объясните пожалуйста отличие binds от provides. Я всегда юзал provides, но мне сообщество говорит, что нужно binds... Хочу понять все за)
источник

RC

Roman Chumachenko in Dagger 2
Иван Чепёлкин
Привет! Объясните пожалуйста отличие binds от provides. Я всегда юзал provides, но мне сообщество говорит, что нужно binds... Хочу понять все за)
источник

ИЧ

Иван Чепёлкин... in Dagger 2
А что вы в своих проектах юзаете? binds?
источник

RC

Roman Chumachenko in Dagger 2
Иван Чепёлкин
А что вы в своих проектах юзаете? binds?
Так нельзя на чем-то одном, у них цели разные. Где нужно имплементации интерфейса дать - так это байнд, а что не инжектиться (инстансы либ всяких вроде okhttp, Retrofit, etc.) то провайдом
источник

ИЧ

Иван Чепёлкин... in Dagger 2
Roman Chumachenko
Так нельзя на чем-то одном, у них цели разные. Где нужно имплементации интерфейса дать - так это байнд, а что не инжектиться (инстансы либ всяких вроде okhttp, Retrofit, etc.) то провайдом
То есть, если я билдером либв создаю объект - то провайдс?
источник

ИЧ

Иван Чепёлкин... in Dagger 2
Retrofit.builde() и т.д.
источник

RC

Roman Chumachenko in Dagger 2
Иван Чепёлкин
То есть, если я билдером либв создаю объект - то провайдс?
Или конструктором, не суть важно. Как только Даггер не может дать эту вещь сам
источник