Як створити модульне android додаток

Створення модуля (бібліотеки)

Для створення модуля в Android Studio вибираєте

Далі є 2 варіанти. Якщо ви плануєте створити «чисту» java-бібліотеку, як тип вказуйте Java Library. в результаті код такої бібліотеки скомпілюється в JAR файл. Це зручно, так як ви зможете використовувати її не тільки в Android додатках. Якщо ж ви збираєтеся використовувати android-специфічні речі і вам знадобляться класи з пакетів android. *. то створюйте Android Library. яка при компіляції збирається в AAR файл. В даному випадку вам понядобітся останній варіант.

ВАЖЛИВО: У minSDKVersion (файли build.gradle модулів) додатки повинен збігатися або бути більше, ніж зазначений в модулі бібліотекі.Указанние buildToolsVersion повинні бути встановлені в Android-SDK. Кожен модуль бібліотеки генерує свій клас ресурсів (* .R.class). Коли Android бібліотеки додаються в проект і відбувається його збірка, то їх ресурси зливаються, що може призвести до конфліктів. Тому в документації визначено такі угоди:

  • Якщо ID ресурсу додатка збігається з ID ресурсу в бібліотеці, то використовується ресурс додатка
  • Якщо ID ресурсу збігається в різних бібліотеках, то використовується ресурс бібліотеки, яка вказана першою в списку залежностей (знаходиться вище в блоці dependecies)
  • Для уникнення описаних вище конфліктів рекомендується використовувати префікс або іншу послідовну схему іменування ресурсів, яка буде унікальна для кожного з модулів (або унікальна для всього програми в цілому)

Підключення Android бібліотеки

Підключаються Android бібліотеки як залежності (якщо бібліотека була створена як окремий проект в AndroidStudio). Тут є так само 2 варіанти:

1.Лібо додати скомпільований AAR (або JAR) файл:

2.Лібо імпортувати бібліотеку з вихідних:

ВАЖЛИВО: переконатися, що ім'я Android бібліотеки було додано в settings.gradle

і з'явилася в блоці dependencies файлу build.gradle додатки

Android бібліотеки можуть містити в собі ресурси, інші JAR бібліотеки, власний AndroidManifest.xml.

Структура компільованою Android бібліотеки

Скомпільована Android бібліотека являє собою звичайний zip архів з розширенням .arr. який містить такі обов'язкові файли і директорії:

  • / Assets /
  • / Libs / name .jar
  • / Jni / abi_name / name .so (де abi_name один з підтримуваних Android ABIs)
  • /proguard.txt
  • /lint.jar

Схожі статті