Android: ссылки на библиотеки для реализации внешней функциональности

Подключение внешних библиотек Jar в проект AndroidПроблема

Вы хотите ссылаться на внешнюю библиотеку JAR  в исходном коде Android-проекта.

Решение

Существует несколько решений.

 

Обсуждение

Мы описываем здесь различные механизмы загрузки и включения файлов JAR в ваши проекты и не обсуждаем вопросы лицензирования при включении сторонних JAR-файлов (пусть это остается между вами и юридическим отделом вашей органи­зации). Помните и соблюдайте лицензионные требования к файлам JAR, которые вы используете!

 

Перечислите зависимости

Немногие разработчики хотят явно загружать файлы JAR, когда такие инстру­менты, как Maven и Gradle, могут обрабатывать управление зависимостями за них. Для того чтобы использовать внешний интерфейс прикладного программирования, вам нужно лишь найти правильные координаты и перечислить их. Координаты состоят из трех частей.

Эти три части объединены в форму, подобную следующему файлу build.xml для системы Maven:

<dependency>
    <groupId>commons-logging</groupId>
    <artifactId>commons-logging-api</artifactId>
    <version>1.1</version>
</dependency>

Для системы Gradle можно использовать более короткую форму в виде файла build.gradle:

compile 'commons-logging:commons-logging-api:1.1'

Эта более короткая форма координат часто используется в документации даже при работе с другими инструментами, такими как Maven!

Как найти эту информацию для конкретного интерфейса API? Если вы знаете имя API, используйте все еще популярный сайте. Вве­дите имя API (например, commons-logging) в поле поиска, выберите совпадение из списка, номер версии по умолчанию (если вы не знаете, что вам нужна более старая версия), выберите свою сборку, если она отличается от Maven (Maven предусмотрен по умолчанию, потому что его авторы создали всю эту замечательную инфраструк­туру!), а также скопируйте и вставьте зависимость в свой инструмент сборки. Кроме того, вы можете использовать среду IDE (Studio или Eclipse с подключаемым модулем М2Е), чтобы явно добавить зависимость.

Как только зависимость окажется в вашем файле сборки, просто создайте свой проект! Если файл JAR, который вам нужен, еще не загружен, инструмент сборки за­грузит его и сохранит в закрытом репозитории (например, для Maven, в репозитории $usER_HOME/.m2/repository), поэтому вам не нужно его загружать снова, пока вы не измените номер версии, от которой зависите.

Подробнее о Apache Maven см. https://maven.apache.org/. Подробнее о Gradle см. https://gradle.org/. Авторы системы Gradle — довольно ревностные пропаган­дисты своего инструмента, в то время как разработчики Maven более отстраненные.

В будущем, если будете разрабатывать интерфейс API, который может быть полезен другим, и будете готовы сделать его доступным, а также создать со­общество вокруг него или организовать другие способы получить информа­цию о нем, рекомендуем вернуться к этому пулу программного обеспечения (см. сайт), чтобы включить в него свой файл JAR.

 

Зависимость от модуля или проекта

Находясь в среде Android Studio, щелкните правой кнопкой мыши на панели Project (Проект) (в левой верхней части экрана) и выберите команду Open Module Settings (Открыть параметры модуля). Выберите вкладку Dependencies (Зависимости) и щелкните на кнопке Add (Добавить) (знак + в левом нижнем углу). Выберите пункт Library (Библиотека), чтобы использовать существующую библиотеку, File (Файл) — для файла JAR или Module (Модуль) — для модуля в вашем проекте. Предположим, вы хотите зависеть от моего JAR-файла darwinsys-api и загрузили его из репози­тория Maven Central, поэтому вам не нужно отслеживать файл. Выберите вариант Library (Библиотека). Введите строку “darwinsys” в поле поиска и нажмите клавишу <Enter>. Через секунду или две вы увидите список проектов darwinsys. Щелкните на пункте darwinsys-api (первый на рис. 1). Если необходимо добавить больше библиотек, повторите процесс добавления. По завершении щелкните на кнопке ОК. Файлы сборки будут обновлены, зависимость будет загружена и станет доступной в вашем пути к классам.

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

Рис. 1Добавление зависимости в среде Android Studio 

 

Для среды Eclipse

 

Загрузка файла JAR вручную

Предположим, вам нужно использовать AndroidPlot, библиотеку для построения диаграмм и графиков в вашем приложении, или OpenStreetMap, проект вики, который создает и предоставляет бесплатные географические данные и картографирова­ние. Если это так, ваше приложение должно ссылаться на эти библиотеки. Вы можете сделать это в среде Eclipse несколькими простыми действиями.

  1. Загрузите файл JAR, соответствующий библиотеке, которую хотите использовать.
  2. Открыв проект Android в среде Eclipse, щелкните правой кнопкой мыши на имени проекта и выберите в меню команду Properties (Свойства) (рис. 2).
  3. В списке слева выберите пункт Java Build Path (Путь сборки Java) и перей­дите на вкладку Libraries (Библиотеки) (рис. 3).
  4. Щелкните на кнопке Add External Jars (Добавить внешние файлы JAR) (рис. 4).

Укажите место, куда вы загрузили файл JAR для библиотеки, которую хотите использовать.

Выбор свойств проекта

Рис. 2Выбор свойств проекта

 Добавление библиотек в проект Eclipse

Рис. 3Добавление библиотек в проект Eclipse

Добавление внешнего файла JAR

Рис. 4Добавление внешнего файла JAR

На этом этапе в вашем проекте вы увидите каталог ссылочных библиотек. Кроме того, появятся файлы JAR, которые вы добавили.

Альтернативный подход — создать папку libs в вашем проекте, физически скопи­ровать туда JAR-файлы и добавить их индивидуально, как и раньше, но вместо этого щелкнув на кнопке Add JARs (Добавить JAR). Благодаря этому все файлы будут хра­ниться в одном месте (это особенно полезно, если ваш проект совместно используется системой управления версиями с другими пользователями, которые могут использо­вать другую операционную систему и не смогут найти внешние JAR в одном месте).

Каким бы способом вы это ни делали, добавить библиотеки в свой проект до­вольно легко.

 

Вас заинтересует / Intresting for you:

Версии платформы Android
Версии платформы Android 2508 просмотров Илья Дергунов Sun, 04 Nov 2018, 14:44:59
Источники примеров кода для со...
Источники примеров кода для со... 3575 просмотров Валерий Павлюков Sat, 24 Nov 2018, 12:19:04
О платформе Android
О платформе Android 4885 просмотров Илья Дергунов Mon, 29 Oct 2018, 17:07:02
Работа над Android-приложением...
Работа над Android-приложением... 2169 просмотров Боба Wed, 14 Nov 2018, 15:37:25
Печать
Войдите чтобы комментировать