Должен ли я использовать Dagger2 в проекте библиотеки?Это вызовет проблемы для приложения? - PullRequest
0 голосов
/ 11 мая 2019

Я сейчас работаю над проектом библиотеки Android. В настоящее время у нас есть чистое внедрение зависимостей (без каких-либо фреймворков). Однако мы расширяем функциональность нашей библиотеки: предоставляя больше модулей, разделяя код на новые модули, динамически доставляя и т. Д. Вот почему наш текущий DI не будет соответствовать нашим потребностям. Нам нужно было бы вложить в это тонны ресурсов.

Я не использовал Dagger2 в начале, потому что считал, что библиотека должна иметь мало зависимостей. Мне комфортно с Dagger2, поэтому он не создаст никаких проблем.

Однако, я боюсь различных проблем, которые могут возникнуть при интеграции нашей библиотеки.

Я хотел спросить, можно ли получить Android Gradle, или есть другие проблемы , если приложение не использует Dagger2, а библиотека использует?

Возникнут ли проблемы с интеграцией, если приложение и библиотека используют разные версии dagger2?

Возникнут ли проблемы с интеграцией, если приложение использует другую DI framework , например, Coin?

Спасибо за ответы!

1 Ответ

0 голосов
/ 11 мая 2019

Да, вы можете использовать Dagger 2 для библиотечного проекта.

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

  • Нет, проблем с интеграцией не возникнет, если вы сможете обрабатывать файлы Dex.Также вы можете попробовать использовать файлы вашей библиотеки (внешние библиотеки), чтобы избежать таких ошибок.

  • Нет, ошибка интеграции не должна возникать, если используются два разных внешних модуля.Но необходимо убедиться, что если оба DI используют какой-либо общий внешний модуль, оба DI должны иметь одинаковую версию внешнего модуля или хорошо управляемый Dex.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...