Articles of dagger 2

Как исправить ошибку Dagger 2? … не может быть предоставлено '?

Это канонический вопрос, потому что это общая ошибка с кинжалом 2. Если ваш вопрос был помечен как дубликат, внимательно прочитайте этот пост и убедитесь, что он понимает, что означает эта ошибка и почему она произошла. Если это сообщение не работает, убедитесь, что вы указываете, где и как вы предоставляете упомянутые классы, и включайте полное сообщение […]

Вызов метода фрагментации из Activity

У меня есть два разных фрагмента, и они оба будут использовать два разных вида деятельности. В макете действия есть один фрейм-макет для использования в качестве контейнера фрагментов. Которые; Фрагменты: MapFragment, ListFragment Деятельность: HomeActivity, SearchActivity. Давайте поговорим о HomeActivity; HomeActivity будет вводить ListFragment и MapFragment в onCreate of activity и нажимать вложенные фрагменты на его макет […]

Кинжал 2, не может вводить презентатора в мою деятельность

Я новичок в Dagger2. У меня проблема с инжектором-презентатором в моей деятельности. Я пытаюсь решить свою проблему после прочтения этой статьи https://android.jlelse.eu/inject-interfaces-without-providing-in-dagger-2-618cce9b1e29, но это не был helpe меня. Надеюсь, кто-то мне поможет, я провожу весь день, чтобы решить это … вот мои модули: @Module class AppModule(private val appContext: Context) { @Singleton @Provides internal fun provideContext(): […]

Почему использование аннотаций Scopes и Singleton в Dagger2 с kotlin вызывает ошибку при компиляции?

Приложение работает нормально, если я не добавлю @MainScope или аннотацию @Singleton до некоторого метода «предоставляет», тогда я получаю ошибку построения градиента Ошибка: выполнение выполнено для задачи ': app: kaptDebugKotlin'. Внутренняя ошибка компилятора. Подробнее см. Журнал Журналы содержат следующее: Строки времени: Местное: 1508577084874, Прибор: 1508577084874 2017-10-21 11: 18: 34,358 [216576] INFO – ools.idea.fd.InstantRunBuilder – BuildCause: FIRST_INSTALLATION_TO_DEVICE, […]

Не обнаружен тестовый компонент с кинжалом 2

Я надеюсь, что это просто то, что я делаю неправильно здесь. Я пытаюсь использовать Dagger 2.0 для инъекций зависимостей для моих тестов JUnit (а не тестов Espresso , просто чистых JUnit). Итак, у меня есть «главный» java-модуль и «тестовый» Java-модуль. В основном модуле у меня есть Dagger Module и компонент: @Module public class MainModule { […]

Кинжал с Mvp на Kotlin – Android

Я разработчик Android, который только что попал в Котлин, и я пытался настроить приложение Mvp Dagger в Kotlin, но я не могу понять, что происходит. Я продолжаю получать эту ошибку: Error:dagger.internal.codegen.ComponentProcessor was unable to process this interface because not all of its dependencies could be resolved. Check for compilation errors or a circular dependency with […]

Просмотр не обновляется после первого запуска LiveData при использовании фоновой работы в Android

Я создаю долговое приложение на Android, используя Dagger 2 , Room и MVVM . Моя проблема связана с реактивностью моего основного вида, где отображается список долгов, и вы можете отметить их. Когда эта деятельность запущена, все долги загружаются правильно, однако, когда я вставляю новый долг, вид не обновляется соответствующим образом . Странная часть заключается в […]

Kotlin: передать массив методу varargs с оператором распространения

Я слишком долго пытался выяснить, как передать несколько экземпляров Migration в конструктор базы данных Room для модуля Dagger2. Для построения базы данных Room требуется контекст и имя базы данных. Room.databaseBuilder(context, Database::class.java, dbName) .build() Миграции могут быть добавлены в конструктор с addMigrations метода addMigrations который принимает vararg migrations: Migration! Один из вариантов – создать конструктор. val […]

Dagger2 вводит презентатора в ошибку активности Kotlin

Я использую dragger2 для ввода презентатора в действие Kotlin, ведущий имеет значение null, вот мой код: class CategoryDetailActivity : MvpActivity<ProductFilterView,ProductFilterPresenter>(), ProductFilterView { private lateinit var presenter: ProductFilterPresenter @Inject set override fun onCreate(savedInstanceState: Bundle?) { initialInjector() super.onCreate(savedInstanceState) setContentView(R.layout.activity_category_detail) initData() initEvent() } private fun initialInjector() { DaggerProductFilterComponent.builder() .applicationComponent(applicationComponent) .productFilterModule(ProductFilterModule()) .build() .inject(this) } override fun getPresenter(): ProductFilterPresenter { […]

Dagger2 + MVP на Котлине

Я изучаю Dagger2 + MVP и делаю это на Котлине. И у меня есть проблема в понимании Dagger2 или MVP или там сочетание. Построение приложения и идеи, как он должен работать, очень просты. Приложение состоит из MenuActivity с левосторонней навигацией и несколькими Fragments (скажем, 3), которые должны быть изменены в FrameLayout в FrameLayout . Я […]