Articles of Кинжал

Dagger2 androidTest error duplicate entry: javax / annotation / Generated.class

Я использую Dagger2 для DI. Мой проект имеет 2 модуля :common модуль, который представляет собой библиотеку и модуль :app который является фактическим приложением. В библиотечном модуле у меня есть AndroidApp который расширяет MultiDexApplication и унаследован в модуле :app . Я следовал примеру Google dagger2, чтобы добавить DI с Dagger2. Каждый раз, когда я запускаю приложение, […]

Кинжал 2: java.lang.NoSuchMethodError

Не удается создать проект с помощью Dagger 2 (Android Studio 1.3). Шаг 1. Добавьте зависимости для build.gradle apt 'com.google.dagger:dagger-compiler:2.0' compile 'com.google.dagger:dagger:2.0' provided 'org.glassfish:javax.annotation:10.0-b28' Полный build.gradle apply plugin: 'com.android.application' apply plugin: 'com.neenbedankt.android-apt' android { compileSdkVersion 22 buildToolsVersion "22.0.1" defaultConfig { minSdkVersion 14 targetSdkVersion 22 versionCode 1 versionName "1.0" } buildTypes { release { minifyEnabled false proguardFiles […]

Кинжал 2 не инициализирует переменную

Теперь я пытаюсь реализовать кинжал в своем проекте, и у меня есть одна проблема. Переменная, которая инициализируется в компоненте приложения, не инициализируется в моей деятельности. Вот мой код. Заявка: public class MyApplication extends Application { private ApplicationComponent applicationComponent; @Inject public Context context; @Override public void onCreate() { super.onCreate(); applicationComponent = DaggerApplicationComponent.builder().applicationModule(new ApplicationModule(this)).build(); applicationComponent.inject(this); } public […]

@Injects после @Produces?

Я пытаюсь изучить DI через кинжал 2 и применить его к нашему продукту. @Singleton уровня приложения, аннотированные с помощью @Singleton , достаточно просты (например, SharedPreferences ). В мышлении о нашей архитектуре существует несколько зависимостей, которые являются асинхронными по своей природе, которые, как я предполагал, охвачены @ForSession определения @ForSession . Наша идентификационная информация об аутентификации / […]

Как переопределить зависимости в пределах областей в кинжале 2

Как вы можете переопределить зависимости в разных областях кинжала 2? Пример: У меня есть два компонента в моем приложении: ApplicationComponent и ActivityComponent . ApplicationComponent является базовым компонентом, а ActivityComponent является областью действия, где я хочу выполнить переопределение. В этом примере я создал эти модели: public class Parrot { private final HelloPrinter helloPrinter; public Parrot(HelloPrinter helloPrinter) […]

Компонент общего назначения Dagger2

Я конвертировал свое приложение из Dagger1.0 в dagger2.0 и имел компонент приложения со многими методами void inject(Activity/Fragment/Receiver/etc object) . С dagger 1.0 я просто мог бы просто сделать objectGraph.inject(Object object) но теперь у моего компонента должен быть метод для каждого отдельного класса, который получает в него зависимые значения. Почему я не могу просто иметь компонент, […]

Как вводить зависимости pojo с помощью кинжала 2?

У меня есть простой класс pojo: public class MySimpleClass { private List<String> mDependency; public MySimpleClass (List<String> dependency) { mDependency = dependency; } } И я пытаюсь создать его с помощью инъекции зависимостей с помощью кинжала 2. Сейчас у меня есть простой модуль и компонент для него: @Module public class MySimpleClassModule { @Provides MySimpleClass provideMySimpleClass(List<String> dependency) […]

Кинжал 2, Библиотечные модули и @ Синглтон

Я пытаюсь использовать Dagger 2 в Android Project, который имеет несколько модулей библиотеки Android, и я хотел бы иметь возможность предоставлять экземпляры классов Singleton из этих модулей. В настоящее время я могу определить компоненты внутри библиотечных модулей и внедрить экземпляры в основной модуль приложения. То, что я не могу сделать, – предоставить экземпляр как singleton. […]

Компонент Dagger2 (un-scoped) не может зависеть от компонентов с областью – Ошибка

Я пытаюсь скомпилировать https://github.com/svenjacobs/android-dagger2-example, но я столкнулся с ошибкой, связанной с незащищенным компонентом, в зависимости от облачных компонентов. (Android Studio 1.1, Gradle 2.2.1). Также, если кто-нибудь знает о других примерах Android Dagger2 с ФРАГМЕНТАМИ, я хотел бы узнать о них. ОБНОВЛЕНИЕ: Вот еще один пример, очень простой с фрагментами: https://github.com/gk5885/dagger-android-sample /Users/Mac1/android-dagger2-example-master/app/src/main/java/com/svenjacobs/dagger2/ActivityComponent.java Error:(15, 1) error: com.svenjacobs.dagger2.ActivityComponent […]

Dagger2 и Android

Я пытаюсь внедрить Injection Dependency Injection в мое приложение, но мне сложно понять, как это работает, особенно из Spring, где DI был намного проще и гораздо более декларативным. Я хочу сделать кучу готовых к инъекции объектов, которые можно использовать во всем моем приложении, это SharedPreferences, Сетевые объекты (OkHttp, Retrofit, Picasso …) и EventBus и объект […]