Например, приложение делится на три модуля: Core, Personal, Client; В Core определены основные библиотеки и методы которые будут переиспользовать остальные модули. Personal и Client - это модули со своим набором activity и бизнес логикой. При авторизации пользователя выбирается, какой модуль использовать. Подскажите, как разрешить зависимости между модулями, а так же каким образом может происходить выбор модуля в зависимости от триггера у пользователя?
Для создания модуля в Android Studio выбираете
File > New > New Module
Далее есть 2 варианта. Если вы планируете создать «чистую» java-библиотеку, в качестве типа указывайте Java Library, в итоге код такой библиотеки скомпилируется в JAR файл. Это удобно, так как вы сможете использовать ее не только в Android приложениях. Если же вы собираетесь использовать android-специфичные вещи и вам понадобятся классы из пакетов android.*, то создавайте Android Library, которая при компиляции собирается в AAR файл. В данном случае вам понядобится последний вариант.
ВАЖНО: В minSDKVersion (файлы build.gradle модулей) приложения должен совпадать или быть больше, чем указанный в модуле библиотеки.Указанные buildToolsVersion должны быть установлены в Android-SDK. Каждый модуль библиотеки генерирует свой класс ресурсов (*.R.class). Когда Android библиотеки добавляются в проект и происходит его сборка, то их ресурсы сливаются, что может привести к конфликтам. Поэтому в документации определены следующие соглашения:
dependecies)Подключаются Android библиотеки как зависимости (если библиотека была создана как отдельный проект в AndroidStudio). Тут есть так же 2 варианта:
1.Либо добавить скомпилированный AAR (или JAR) файл:
- File > New Module
- Import .JAR/.AAR Package > Next
- вводите путь до ARR (или JAR) файла > Finish
2.Либо импортировать библиотеку из исходников:
- File > New > Import Module
- вводите путь до директории, в которой находятся исходники библиотеки > Finish
ВАЖНО: убедиться, что имя Android библиотеки было добавлено в settings.gradle
include ':app', ':core', ':personal', ':client'
и появилась в блоке dependencies файла build.gradle приложения
dependencies {
compile project(":core")
compile project(":personal")
compile project(":client")
}
Android библиотеки могут содержать в себе ресурсы, другие JAR библиотеки, собственный AndroidManifest.xml.
Скомпилированная Android библиотека представляет собой обычный zip архив с расширением .arr, который содержит следующие обязательные файлы и директории:
и необязательные:
Апостиль в Лос-Анджелесе без лишних нервов и бумажной волокиты
Основные этапы разработки сайта для стоматологической клиники
Продвижение своими сайтами как стратегия роста и независимости