Какие шаги нужно выполнить, чтобы добавить чужой проект (библиотеку) к своему в Android Studio? Нужно, чтобы я мог обратиться из своего проекта к классам из чужого проекта. В build.gradle я уже прописал.
Ответ
Во-первых, если библиотека достаточно выского качества, то автор библиотеки, как правило, дает инструкции о том, как ее подключить в свой проект - им надо следовать в первую очередь.
Сама Android Studio позволяет подключить три типа библиотек в свой проект:
из репозитория Maven
библиотеку в виде собранного .jar файла
библиотеку в виде исходных кодов
Для выполнения этой работы в Android Studio есть графический интерфейс, но олдскульные кодеры могут проделать ту же работу, прописывая необходимые команды в конфиги gradle вручную.
Открываем окно структуры проекта (File -> Project Structure) и переходим к основному модулю проекта - слева секция Modules, кликнуть по названию модуля вашего приложения (на скриншоте это app). В открывшемся окне переходим к вкладке Dependencies. Здесь вы можете управлять подключенными зависимостями: добавить новые, удалить ненужные и перемещать их по иерархии.
Для того, чтобы добавить зависимость, нажимаем на плюсик справа и видим три пункта - рассмотрим их подробнее:
Library dependency — добавление библиотеки из внешнего репозитория
Этот пункт требует, как правило, наименьшего количества усилий. Обычно, по умолчанию, в конфиге gradle всего проекта в качестве внешнего репозитория используется JCenter и все уважающие себя разработчики складывают свои труды туда, но вы можете прописать в том конфиге и другие репозитории с библиотеками, если таковые вам требуются.
При выборе пункта 1 появляется окно поиска, в котором вы можете набрать имя требуемой библиотеки и, если она присутствует в репозитории - вы ее увидите. Нажатие кнопки OK проделает всю черную работу по подключению библиотеки и после того, как gradle проведет необходимые манипуляции по скачиванию и импорту, она будет доступна в вашем проекте.
Если вы не доверяете инструментам Android Studio и желаете самостоятельно вручную добавить библиотеку из репозитория, вам необходимо прописать в секции dependencies{} конфига build.gradle вашего приложения ссылку на нужную библиотеку:
dependencies {
compile 'com.mikepenz:materialdrawer:2.9.8'
}
При внесении каких-либо изменений в конфиги gradle вверху появляется предупреждение о необходимости синхронизировать проект - когда все изменения будут сделаны, нажмите на ссылку Sync Now вверху справа, чтобы gradle применил ваши изменения.
File dependency — добавление библиотеки из локального скомпилированного .jar файла
Перед началом импорта локальной библиотеки в виде .jar файла необходимо скопировать сам файл библиотеки в папку /libs вашего проекта.
При выборе пункта 2 появится стандартный диалог выбора файла, в котором необходимо указать, собственно, сам файл подключаемой библиотеки.
При нажатии кнопки OK gradle проведет некоторые манипуляции по импорту, которые займут какое-то время, после чего библиотека будет доступна в вашем проекте.
Для того, чтобы вручную сделать то же самое — добавить библиотеку на основе .jar файла, в секции dependencies{} конфига build.gradle приложения необходимо прописать следующее:
dependencies {
compile files('libs/realm.jar')
}
Для того, чтобы подключить все библиотеки из папки /libs/ разом, нужно сделать так:
dependencies {
compile fileTree(include: ['*.jar'], dir: 'libs')
}
Module dependency — добавление библиотеки из исходных кодов
Перед импортом библиотеки из исходных кодов необходимо скачать сами исходные коды и распаковать в какой-то каталог.
Для наименьших проблем:
исходные коды должны быть gradle-проектом Android Studio/IntelliJ IDEA
имена основного модуля и модуля подключаемой библиотеки не должны совпадать.
подключаемый исходник является библиотекой, а не приложением (в build.gradle того, что вы подключаете указано apply plugin: 'com.android.library') — это можно исправить самостоятельно в конфиге gradle того, что вы подключаете.
минимальные версии SDK вашего проекта и библиотеки должны совпадать — можно исправить самостоятельно в конфигах gradle проекта или библиотеки.
версии BuildTools проекта и библиотеки должны совпадать (рекомендуется), либо обе версии должны быть установлены в вашем SDK (не рекомендуется). Лучшее решение — всегда использовать самую последнюю версию BuildTools
Для начала импортируем нужную библиотеку в свой проект в качестве модуля. Нажимаем File -> New -> Import Module, указываем путь до корневой папки с разархивированными исходниками и следуем другим указаниям мастера импорта.
После чего, выбрав пункт 3 (смотрите первый скриншот) появляется окно выбора модуля, кликнув по нужному и нажав кнопку OK будет проведена работа по импорту в ваш проект, после чего библиотека будет доступна в вашем проекте.
Добавление библиотеки на основе исходников вручную — несколько муторное занятие и описывать я его не буду. Ценители ручного способа конфигурации проекта получат удовольствие, проделав "таинство" самостоятельно, а остальным вовсе без надобности.
Комментариев нет:
Отправить комментарий