Какой лучший способ настроить приложение Mutliple в Android Studio? - PullRequest
0 голосов
/ 05 апреля 2020

У меня есть проект в Android Studio и два разных модуля приложения, но оба они используют одну и ту же библиотеку Android (основной код). Я хочу изменить некоторые ресурсы и логи c в приложении, но этот код находится в ядре (Android библиотека). Каков наилучший способ и лучшая практика для этого? Как настроить основной код?

Ответы [ 2 ]

1 голос
/ 05 апреля 2020

Я задавал тот же вопрос , и после некоторых исследований я обнаружил, что у вас другой подход:

Ароматизатор Gradle:

Почему ароматы продукта ?

  • Они решают проблему наличия отдельного кода проекта для каждой версии приложения, в то же время имея один код проекта.
  • Учитывая сценарий, когда у вас есть бесплатное и платное приложение Вы можете ограничить число функций в бесплатной версии и предоставить все остальные функции в платной версии приложения.
  • Учитывая другой сценарий, в котором вы хотите реализовать специфичные для региона функции c в зависимости от страны, вы можете использовать варианты продуктов для такого случая использования.
  • Белая маркировка (это приложения, разработанные определенной компанией, которые переименованы и перепроданы другими компаниями).

Плюсы

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

  • Они поддерживают код в чистоте и делают Это гораздо проще и быстрее перемещаться по базе кода, так как все, что связано с указанным c видом продукта, будет храниться в соответствующих папках.

Минусы

  • (Масштабирование) Чем больше вариантов, тем больше сложность, что затрудняет поддержание кодовой базы. -Идс иногда требуется время для создания проекта после переключения между вариантами.

Источник: https://levelup.gitconnected.com/simple-guide-to-android-product-flavors-674106455038


Мультимодуль

Почему?

  • Более быстрое время сборки.
  • Детальное управление зависимостями.
  • Улучшение возможности повторного использования в других приложениях.
  • Улучшает владение & качество кодовой базы.
  • Более строгие границы по сравнению с пакетами.

Плюсы

  • Масштабируется по мере роста приложения с новыми функциями
  • Средние и большие команды разработчиков могут работать на разных модулях, не влияя друг на друга (Merge Conflicts)
  • Инкапсулирует юнит-тесты и пользовательский интерфейс в соответствии с их спецификациями c
  • Сохраняет ресурсы разделены между модулями. Что улучшает читабельность и организацию
  • Сохраняет логи c, содержащиеся в их собственных модулях, которые могут быть скрыты за интерфейсами
  • Заставляет разработчика лучше организовывать и структурировать свой код
  • Улучшена скорость сборки, так как изменения в модуле означают только то, что модуль нужно будет перестраивать

Минусы

  • Добавляет дополнительный шаблон вокруг конструкции модулей
  • Общее время разработки
  • Требуется файл maven / gradle для каждого модуля
  • Навигация между действиями модуля может быть затруднена для правильной настройки
  • Требуется намного больше предварительных планирование того, как лучше всего структурировать код, и определение места хранения баз общего кода.
  • Ограниченный объем онлайн-ресурсов, показывающих лучшие практики

Источник:

Также посмотрите на gradle do c до начать с мо dularizing.

0 голосов
/ 05 апреля 2020

Вы можете создать библиотеку aar и использовать ее в своих основных проектах, просто скопировав в папку lib в каталоге вашего проекта.

Или вы можете создать ее с помощью таких служб, как Jitpack, и добавить ее в Ваш проект методом implementation в Gradle.

...