Додайте будь-яку бібліотеку GitHub до Android Studio, використовуючи Maven, JCenter та JitPack

Автор: Lewis Jackson
Дата Створення: 13 Травень 2021
Дата Оновлення: 1 Липня 2024
Anonim
Додайте будь-яку бібліотеку GitHub до Android Studio, використовуючи Maven, JCenter та JitPack - Додатки
Додайте будь-яку бібліотеку GitHub до Android Studio, використовуючи Maven, JCenter та JitPack - Додатки

Зміст


Дуже мало проектів Android - це острів! Більшість проектів Android мають залежність від ряду інших компонентів, включаючи сторонні бібліотеки Android.

Бібліотека Android містить ті самі файли, які ви знаходите в звичайному проекті Android, такі як вихідний код, ресурси та Manifest. Однак замість того, щоб компілювати в Android Package Kit (APK), який може працювати на пристрої Android, бібліотека збирається в архів коду, який можна використовувати як залежність від проекту. Ці бібліотеки надають вам доступ до широкого спектру додаткових функціональних можливостей, включаючи деякі функції, які не входять у платформу Android для ванілі.

Одне з найкращих місць для пошуку бібліотек Android - це GitHub. Однак потрапляння бібліотеки зі своєї сторінки GitHub і у ваш проект не завжди просто, тим більше, що існує кілька різних сховищ, які розробники можуть використовувати для розповсюдження своїх проектів GitHub - і не завжди може бути очевидним, який репозитарій використовує розробник!


У цій статті я покажу вам, як імпортувати будь-яку бібліотеку, яку ви знайдете на GitHub, у свій проект Android, незалежно від того, хочете ви додати бібліотеку як віддалену залежність чи як локальну залежність.

Додавання віддалених залежностей

Система збірки Gradle Android Studio додає бібліотеки до вашого проекту як модуль залежності. Ці залежності можуть бути розташовані у віддаленому сховищі, наприклад, Maven або JCenter, або вони можуть зберігатися у вашому проекті, як локальна залежність - вам просто потрібно повідомити Gradle, де він може знайти ці залежності.

Додавання бібліотеки як віддаленої залежності, як правило, є найшвидшим і найпростішим способом включення коду бібліотеки у ваш проект, тому це метод, який ми будемо розглядати спочатку. Коли ви додаєте бібліотеку як віддалену залежність, Gradle переконається, що залежність має все, що потрібно для запуску, включаючи будь-яку перехідний залежностей, тому зазвичай потрібно додати бібліотеку як віддалену залежність, де це можливо.


Щоб додати віддалену залежність, вам потрібно буде надати Gradle дві інформацію:

  • Репозиторій. Gradle повинен знати сховище (або сховища), де воно має шукати вашу бібліотеку (або бібліотеки). Бібліотеки Android, як правило, поширюються через Maven Central або JCenter.
  • Запис компіляції. Він містить назву пакета бібліотеки, назву групи бібліотеки та версію бібліотеки, яку ви хочете використовувати.

В ідеалі сторінка GitHub бібліотеки повинна надавати вам всю цю інформацію. Насправді це не завжди так, але почнемо з найкращого сценарію та припустимо, що ця бібліотечна бібліотека містить цю інформацію.

Додавання віддаленої залежності з JCenter

StyleableToast - це бібліотека, яка дозволяє налаштувати кожну частину тостів Android, включаючи зміну кольору фону, радіуса кута та шрифту та додавання піктограм. Він також надає всю інформацію, необхідну для додання цієї бібліотеки до вашого проекту, у спеціальному розділі "Установка". Тут ми можемо побачити, що цей проект поширюється через JCenter.

Коли ви створюєте проект із останніми випусками Android Studio, файли build.gradle проекту вже налаштовані для підтримки JCenter. Якщо ви відкриєте файл build.gradle на рівні проекту, ви побачите, що JCenter вже включений у розділ "allprojects / repositories":

allprojects {сховища {jcenter ()}}

Зауважте, файл build.gradle на рівні проекту містить два блоки "сховищ", але блок "buildscript / repositories" - це місце, де ви визначаєте, як Gradle виконує цю збірку. Не слід додавати залежності цього модуля до цього розділу.

Оскільки ваш проект уже налаштований на перевірку JCenter, єдине, що нам потрібно зробити, - це додати наш констатаційний файл до файлу build.gradle на рівні модуля.

Ще раз StyleableToast надає нам точно ту інформацію, яка нам потрібна, тому просто скопіюйте констатаційний констатацію зі сторінки GitHub StyleableToast і вставте її у свій файл Gradle:

залежності {compile com.muddzdev: styleabletoast: 1.0.8}

Синхронізуйте свої файли Gradle, натиснувши банер "Синхронізувати" або вибравши значок "Синхронізувати проект з файлами Gradle" на панелі інструментів. Потім Gradle запитає сервер JCenter, щоб перевірити, чи існує бібліотека Styleabletoast, і завантажити всі її файли. Тепер ви готові розпочати використання цієї бібліотеки!

2. Додавання віддаленої залежності з Maven Central

Крім того, якщо на сторінці GitHub проекту зазначено, що ця бібліотека поширюється через Maven Central, тоді вам потрібно буде сказати Gradle перевірити Maven Central.

Відкрийте файл build.gradle на рівні проекту та додайте Maven Central до блоку «allprojects»:

allprojects {сховища {mavenCentral ()}}

Звідси решта процесу точно така ж: відкрийте файл build.gradle на рівні модуля, додайте оператор компіляції та синхронізуйте з Gradle.

3. Додавання віддаленої залежності, розміщеної на власному сервері

Інколи ви можете зустріти проект, який досі розповсюджується через JCenter або Maven Central, але розробник вирішив розмістити їх на власному сервері. У такому разі на сторінці GitHub проекту слід вказати використовувати дуже конкретну URL-адресу, наприклад, сховище набору Crashlytics Fabric знаходиться за адресою https://maven.fabric.io/public.

Якщо ви бачите такий тип URL-адрес, вам потрібно буде відкрити файл build.gradle на рівні проекту та оголосити сховище (у цьому випадку Maven) разом із точною URL-адресою:

сховища {maven {url https://maven.fabric.io/public}}

Потім ви можете додати оператор компіляції та синхронізувати файли як звичайно.

Що робити, якщо я не можу знайти оператор сховища та / або скласти оператор?

Досі ми були оптимістичними і вважали, що проект GitHub завжди повідомляє всю інформацію, яку потрібно знати. На жаль, це не завжди так, тож давайте перейдемо від найкращого випадку до найгіршого сценарію, і уявімо, що сторінка GitHub проекту не надає вам жодної інформації про сховище та компіляцію заяв, які потрібно використовувати.

У цьому випадку ви можете:

  • Використовуйте JitPack.
  • Клоніруйте весь сховище та імпортуйте його код у ваш проект як власний модуль.

Використання JitPack

JitPack - це сховище пакетів для Git, яке дозволяє додавати будь-який проект GitHub як віддалену залежність. Поки бібліотека містить файл збірки, JitPack може генерувати всю інформацію, необхідну для додання цієї бібліотеки до вашого проекту.

Першим кроком є ​​відкриття файлу build.gradle на рівні проекту та додавання JitPack у сховище:

allprojects {сховища {maven {url https://jitpack.io}}}

Потім ви можете використовувати веб-сайт JitPack для створення заяви про компіляцію на основі URL-адреси GitHub цього проекту:

  • У веб-браузері перейдіть на сторінку бібліотеки GitHub. Скопіюйте його URL-адресу.
  • Перейдіть на веб-сайт JitPack.
  • Вставте URL-адресу в поле пошуку веб-сайту, а потім натисніть супровідну кнопку "Знайти".
  • Потім на веб-сторінці відображатиметься таблиця всіх версій цієї бібліотеки, розділена на різні вкладки: випуски, побудови, гілки та коміти. Як правило, випуски, як правило, більш стабільні, тоді як розділ Комісія містить останні зміни.

  • Визначивши, яку версію ви хочете використовувати, натисніть супровідну кнопку "Отримати".
  • Веб-сайт повинен оновитись, щоб відобразити точну заяву компіляції, яку потрібно використовувати.

  • Скопіюйте / вставте цю компіляцію у файл проекту.gradle на рівні модуля вашого проекту.
  • Синхронізуйте свої файли Gradle, і ви готові почати використовувати свою бібліотеку!

Клонування проекту GitHub

Крім того, коли ви не впевнені в заявці для сховища та / або компіляції заявки, ви можете цього зробити клон проект GitHub. Клонування створює копію всього коду та ресурсів проекту GitHub і зберігає цю копію на вашій локальній машині. Потім ви можете імпортувати клон у свій проект як власний модуль і використовувати його як залежність від модуля.

Цей метод може зайняти багато часу, і імпорт коду всього проекту може спричинити конфлікти з рештою проекту. Однак клонування дає вам доступ до всього коду бібліотеки, тому цей метод ідеальний, якщо ви хочете налаштувати бібліотеку, наприклад, налаштувавши її код для кращої інтеграції з рештою вашого проекту або навіть додавши нові функції (хоча якщо ви відчуваєте, що інші люди можуть отримати користь від ваших змін, то, можливо, ви захочете внести свої вдосконалення в проект).

Для клонування проекту GitHub:

  • Створіть обліковий запис GitHub.
  • На екрані "Ласкаво просимо" виберіть "Оформити замовлення з контролю версій".
  • Введіть свої дані GitHub.
  • Відкрийте веб-браузер, перейдіть до сховища GitHub, яке ви хочете клонувати, а потім скопіюйте / вставте його URL у діалогове вікно Android Studio.
  • Вкажіть локальний каталог, де ви хочете зберігати клонований сховище.
  • Дайте ім’я цього каталогу та натисніть «Клонувати».

Тепер у вас є копія коду бібліотеки, ви можете імпортувати цю бібліотеку у свій проект Android, як новий модуль:

  • Відкрийте проект, де ви хочете використовувати клоновану бібліотеку, а потім виберіть "Файл> Нове> Імпортувати модуль" на панелі інструментів Android Studio.
  • Клацніть кнопку з три крапками та перейдіть до клонованого сховища. Виберіть це сховище та натисніть "ОК".
  • Натисніть "Готово".
  • Виберіть "Файл> Структура проекту" на панелі інструментів Android Studio.
  • У меню зліва виберіть модуль, де ви хочете використовувати цю бібліотеку.
  • Виберіть вкладку "Залежності".

  • Виберіть маленький значок "+", а потім "Залежність від модуля".
  • Виберіть модуль бібліотеки, а потім натисніть «ОК».
  • Зайдіть у вікно "Структура проекту".

Залежно від бібліотеки, яку ви використовуєте, можливо, вам доведеться внести деякі коригування імпортованого коду, перш ніж ваш проект буде скомпільований. Наприклад, якщо вкладка Android Studio скаржиться на несумісні minSdkVersions, то ймовірність того, що API, використовувані бібліотекою, не сумісні з версіями платформи Android, визначеними у файлі build.gradle вашого проекту. Так само, якщо Android Studio скаржиться на buildToolsVersion вашого проекту, то, ймовірно, існує невідповідність між версією, визначеною в бібліотеці, та версією, визначеною в іншому місці вашого проекту. В обох цих сценаріях вам потрібно буде перевірити значення, визначені в обох файлах build.gradle, та змінити їх відповідно.

Вирішення проблем

Коли ви працюєте будь-який виду програмного забезпечення сторонніх виробників, як правило, ви, швидше за все, зустрінете несумісність, помилки та багато іншого дивно поведінку, порівняно з тим, коли ви використовуєте набір програмного забезпечення, розроблений тією ж командою, і де кожен фрагмент головоломки був спеціально розроблений для спільної роботи.

Якщо у вас виникли проблеми після додавання бібліотеки до проекту, спробуйте наступні виправлення:

  • Переконайтеся, що ви випадково не додали кілька версій однієї бібліотеки. Якщо Android Studio повідомляє про помилку «декілька файлів DEX визначають…», можливо, ви додавали ту саму бібліотеку до свого проекту не раз. Ви можете переглянути залежність свого модуля, вибравши "Файл> Структура проекту" на панелі інструментів Android Studio, потім вибравши модуль, який потрібно вивчити, та натиснувши вкладку "Залежності". Якщо бібліотека відображається у цьому вікні кілька разів, виберіть копію та натисніть маленьку піктограму «-», щоб видалити її.
  • Шукайте в Інтернеті. Завжди є ймовірність, що інші люди можуть зіткнутися з тією ж проблемою, що і ви, тому проведіть швидкий пошук в Google, щоб побачити, чи хтось розмістив цю проблему на форумах чи спільнотах, таких як Stackoverflow. Можливо, вам навіть пощастить і знайдете щоденник, що містить інструкції щодо вирішення цієї проблеми.
  • Очистіть і відновіть свій проект. Іноді для виправлення вашої проблеми може бути достатньо вибрати "Створити> Очистити проект" на панелі інструментів Android Studio, а потім "Створити> Відновити проект".
  • А якщо все інше не вдасться ... Правильне функціонування програмного забезпечення третьої сторони іноді вимагає трохи спроб і помилок, тож якщо є альтернативний спосіб імпорту обраної бібліотеки, то завжди варто спробувати. Оскільки ваш проект відмовляється компілювати після того, як ви імпортували клонований сховище, це не означає, що він матиме таку ж реакцію, якщо ви спробуєте використати цю ж бібліотеку як віддалену залежність.

Підведенню

У цій статті ми розглянули, як ви можете додати будь-яку бібліотеку, яку ви знайдете на GitHub, до свого проекту Android, незалежно від того, чи розповсюджується ця бібліотека через JCenter чи Maven Central. І навіть якщо ви не маєте уявлення про те, який оператор сховища чи компілювати потрібно використовувати, ви завжди маєте можливість використовувати JitPack або клонувати код бібліотеки.

Ви виявили якісь чудові бібліотеки Android на GitHub? Повідомте нас у коментарях нижче!

Пізніше цього року Ubioft планує запустити нову гру у своїй багаторічній серії заголовків з військовою тематикою «Том Клансі», а цього разу - це мобільна гра для Android та iO. Мало того, ал...

Цього тижня ми розглянули LG G8 ThinQ, який не дуже відповідав конкуренції. amung випустила більше інформації про середні пристрої серії A, додавши нові телефони Galaxy A80 та A70. У A80 може бути не ...

Вибір Сайту