Описание тега dagger-android

1 ответ

<AndroidInjector.Factory <? extends android.support.v4.app.Fragment >>> не может быть предоставлен без аннотируемого метода @Provides

Когда я использую AndroidInjector как ниже для non supportLibrary class MainApplication: DaggerApplication() { override fun applicationInjector(): AndroidInjector&lt;MainApplication&gt; { return DaggerAppComponent.builder().application(this).build()…
09 янв '19 в 09:52
2 ответа

Dagger 2.11 - в компоненте существует привязка с соответствующим ключом

У меня есть небольшой сценарий, в котором у меня есть следующая структура, где я пытаюсь внедрить менеджер фрагментов в фрагмент BaseActivity, но по какой-то причине мне не хватает удачи:( @Singleton @Component(modules = { AppModule.class, ActivityM…
1 ответ

Dagger2 vs Класс приложений в Android

На этом простом примере public class MyApp extends Application { private static MyApp app; private ImageDownloaderComponent imageDownloaderComponent; // dagger2 ImageDownloader imageDownloader; @Override public void onCreate() { super.onCreate(); ap…
1 ответ

Как Dagger 2 избавляется от введенных полей, когда они больше не нужны?

У меня есть вопрос о введении нескольких фрагментов в поля деятельности. В настоящее время у меня есть такая настройка (все фрагменты расширяют DaggerFragment, а действие - DaggerAppCompatActivity): @Inject lateinit var fragmentOne: FragmentOne @Inj…
1 ответ

Конфликт Кинжала

Репозиторий: https://github.com/googlesamples/android-architecture Ветка - Тодо-мвп-кинжал Обнаружено, что TaskFragment вводится с помощью contructorinjection Например: в TasksModule я хочу добавить еще один модуль для фрагмента задачи, как показано…
23 ноя '17 в 16:16
1 ответ

Как взаимно связать фрагменты с докладчиками, используя dagger-android?

Я хотел бы иметь модуль фрагмента, который обеспечивает представление (фрагмент) и докладчик. Вид зависит от докладчика, докладчик зависит от представления, и кинжал позаботится об этих зависимостях. Я видел этот метод для работы и докладчиков, но к…
1 ответ

Dagger2: как не дублировать модуль-компонент для активности / фрагментов, полагаясь на одну базу (модуль / компонент) для базы (действие / фрагмент) и

Заданный BaseFragment и его подклассы: DerivedFragmentA, DerivedFragmentB, ... Допустим, что большинство @Inject поля являются общими для каждого фрагмента и поэтому объявлены в BaseFragment: abstract class BaseFragment : DaggerFragment() { @Inject …
1 ответ

Как мне справиться с фоновым приложением, чтобы восстановить Exoplayer, который я добавляю в Dagger2?

У меня есть фрагмент, который содержит экземпляр Exoplayer, который я поставляю с Dagger 2 следующим образом:@Inject SimpleExoPlayer mPlayer; По большей части это работает хорошо, я могу проигрывать вещи на своем плеере, состояние корректно восстана…
13 янв '19 в 11:35
0 ответов

Пересмотр списка Dagger 2

Я столкнулся с проблемой сохранения данных "кеша" с помощью Dagger2. я имею Application Component а также Authentication Subcomponent, Authentication Subcomponent имеет кеш-модуль: @Module class AuthCacheModule { @AuthScope @Provides fun provideGeoL…
23 дек '18 в 21:50
2 ответа

Dagger2 Inject Unit Tests является нулевым

Привет, я использовал кинжал для инъекций зависимостей сетевого модуля, ApplicationModule, DatabaseModule, презентаторов и интерактора в моем приложении. Я хочу использовать эти же классы и модуль во время модульного тестирования. В качестве ссылки …
1 ответ

Dagger 2 предоставляет ViewModel компонентную зависимость

Я использую Dagger 2 с несколькими привязками, чтобы обеспечить ViewModels. Вот мой код: interface AppProvider : MainToolsProvider interface MainToolsProvider { fun provideAppContext(): Context fun provideSchedulers(): SchedulersProvider fun provide…
1 ответ

Застрял в попытке реализовать официальную стратегию Dagger, чтобы избежать громоздкого кода

В моих попытках последовать хорошему и официальному совету по внедрению и избеганию громоздкого кода (который я имел) от самих авторов, я наткнулся на стену, пытаясь использовать библиотеку поддержки. Согласно статье: Пользователи AppCompat должны п…
0 ответов

Ошибка установки кинжала для тестов эспрессо, компонент не сгенерирован и другие ошибки

Я настраиваю Dagger для использования в тестах эспрессо. Цель состоит в том, чтобы использовать подкласс приложения Application Класс и построить сгенерированный компонент Dagger, который содержит модули, которые обеспечивают фиктивные зависимости. …
0 ответов

Как использовать AndroidInjection Dagger в библиотеке Android без доступа к классу Application

Во время разработки библиотеки или, скажем, плагина для проекта, я столкнулся с проблемой Dagger. В прошлом мы использовали старый Dagger API, который в основном осуществлялся путем доступа к компоненту через статическую ссылку и внедрения собственн…
2 ответа

Кинжал - инъекция зависимости

Является ли это решение правильным или я должен создать отдельные FragmentBuildersModules для каждой Активности? @Suppress("unused") @Module abstract class ActivityModule { @ContributesAndroidInjector(modules = [FragmentBuildersModule::class]) abstr…
0 ответов

Как реализовать роботный тест фрагмента?

Я использую инъекцию в моем базовом фрагменте, так что мне нужно сохранить приведение в моем базовом фрагменте, вот код: public abstract class BaseFragment extends Fragment { @Override public void onAttach(Context context) { super.onAttach(context);…
2 ответа

Зачем дважды вводить приложение Android в Dagger?

Глядя на исходный код для примера GithubBrowerSample компонентов архитектуры Android, я не понимаю смысла двойного введения githubApp, Не было бы inject метод будет достаточно? Зачем это нужно им обоим в одном предложении? public interface AppCompon…
1 ответ

Dagger2 преобразование в android.dagger

Я изучил некоторые учебники о новом подходе dagger.android, но не могу сделать это правильно. Я построил простое руководство с компоновщиком подкомпонентов, но я не могу преобразовать это в новый подход. Все учебники и статьи оставляют необходимые ч…
18 июл '18 в 10:18
2 ответа

Использование @Binds с @Named в Dagger 2

У меня есть мой модуль, как показано ниже, @Module public abstract class BindsModuleEx { @Binds @Named("obj2") public abstract SomeInterface provideSomeInterface2(SomeInterfaceImpl2 someInterfaceImpl); @Binds @Named("obj1") public abstract SomeInter…
10 апр '18 в 02:44
0 ответов

Как передать AppCompatActivity в модуль?

Я использую Dagger 2 в своем проекте. У меня есть несколько модулей в проекте. И у меня есть BaseActivityModule, который подключается к каждому модулю деятельности. Как получить AppCompatActivity в BaseActivityModule. При компиляции проекта я получа…
19 ноя '18 в 07:39