Создание Android Instant App с компонентом приложения из кинжала

Я сейчас экспериментирую с InstantApps и хочу включить кинжал в свой проект.

У меня возникла проблема с настройкой приложения AppComponent. Мой компонент приложения включает в себя все функциональные кинжалы моего приложения.

Я в основном имею:

  • Один базовый модуль приложения, содержащий мой класс приложения
  • Множество функций с каждым модулем кинжала за активность, все с базой как зависимость.
  • Один модуль приложения и мгновенный модуль одновременно импортируют все функции и базовый модуль приложения.

Я пытаюсь выяснить настройку перед добавлением модуля Instant App.

Из документации и проектов InstantApps. Кажется, что класс Application должен находиться в базе. Из документации Dagger, чтобы установить кинжал:

DaggerYourAppComponent.create().inject(this); 

Должен быть включен в класс приложения. Однако это кажется невозможным, поскольку AppComponent должен ссылаться на все модули кинжалов.

Мои вопросы :

  • Где я должен добавить модуль для кинжалов AppComponent?
  • Должен ли я сохранять свое приложение в модуле приложения, а не в базе?
  • Любая репозитория GitHub или документация вокруг Dagger с Instant Apps?

спасибо

Solutions Collecting From Web of "Создание Android Instant App с компонентом приложения из кинжала"

  • Dagger2 очень поддерживается мгновенными приложениями. Вы можете создавать классы компонентов для каждого модуля функций и соответствующего класса провайдера Dagger для отображения экземпляра класса компонента для каждого модуля функций.
  • Каждый класс компонентов модуля может объявлять инжекционные методы для классов, содержащихся только в этом функциональном модуле.
  • Кроме того, вы можете также иметь класс компонента Application в базовом модуле для широкого применения приложений.
  • Класс компонента приложения может быть создан в классе приложения, включенном в базовый модуль, и подвергаться воздействию других функциональных модулей с помощью статического метода в классе приложения.

Вот пример кода инъекции Dagger2 с мгновенными приложениями, чтобы сделать вещи более ясными. https://github.com/willowtreeapps/android-instant-apps-demo