Синхронизация совместно используемых библиотечных проектов/модулей со своим источником
Я учусь создавать общие библиотеки Android, которые можно использовать с разными проектами. У меня появилось несколько вопросов по этому вопросу. Прежде чем я займусь вопросами, ниже я сделал это до сих пор:
- Создание проекта библиотеки
- Создайте еще один проект приложения и импортируйте библиотеку в качестве модуля
Мои вопросы:
- Является ли код проекта библиотеки автоматически синхронизирован с импортированным в проекты приложений? Как это можно достичь?
- Если нет, что еще я могу сделать, чтобы убедиться, что мне просто нужно обновить общую библиотеку один раз?
Я использую Android Studio IDE.
Спасибо,
Ответы
Ответ 1
А да, это может быть очень полезно во многих случаях. Для достижения этой цели вы можете сделать следующее.
Скажем, у вас есть два проекта: MyApplication и MyLibraryDemo, содержащий библиотечный модуль libmodule со следующими путями:
MyApplication - "/../AndroidStudioProjects/MyApplication"
MyLibraryDemo - "/../AndroidStudioProjects/MyLibraryDemo"
libmodule - "/../AndroidStudioProjects/MyLibraryDemo/libmodule"
И скажем, вы пытаетесь использовать libmodule в MyApplication.
Затем в settings.gradle
вашего проекта MyApplication
сделайте это
include ':app', ":libmodule"
project(':libmodule').projectDir = new File(settingsDir, '../MyLibraryDemo/libmodule')
Возможно, вам придется внести соответствующие исправления, но я надеюсь, что идея связать другой модуль понятна.
Все самое лучшее:)
Ответ 2
Импорт модуля извне вашего проекта приложения создает копию библиотеки внутри вашего приложения. Если ваша система поддерживает его, создание символической ссылки позволит вам иметь только одну копию кода.
В противном случае вы можете переместить весь проект библиотеки в свое приложение и добавить его в свои настройки .gradle.
Если вы хотите иметь отдельные репозитории git для обоих этих проектов, изучите использование подмодулей git.