Přidejte libovolnou knihovnu GitHub do Android Studio pomocí Maven, JCenter a JitPack

Autor: Lewis Jackson
Datum Vytvoření: 13 Smět 2021
Datum Aktualizace: 1 Červenec 2024
Anonim
Přidejte libovolnou knihovnu GitHub do Android Studio pomocí Maven, JCenter a JitPack - Aplikace
Přidejte libovolnou knihovnu GitHub do Android Studio pomocí Maven, JCenter a JitPack - Aplikace

Obsah


Velmi málo projektů Android je ostrov! Většina projektů Android závisí na řadě dalších komponent, včetně knihoven Android třetích stran.

Knihovna Android obsahuje stejné soubory, které byste našli v běžném projektu Android, například zdrojový kód, zdroje a manifest. Avšak namísto kompilace do sady Android Package Kit (APK), která může běžet na zařízení Android, se knihovna zkompiluje do archivu kódu, který můžete použít jako závislost na projektu. Tyto knihovny vám umožňují přístup k celé řadě dalších funkcí, včetně některých funkcí, které nejsou součástí platformy vanilla Android.

Jedním z nejlepších míst, kde najdete knihovny Android, je GitHub. Získání knihovny ze stránky GitHub a do vašeho projektu však není vždy jednoduché, zejména proto, že existuje několik různých repozitářů, které mohou vývojáři použít k distribuci svých projektů GitHub - a nemusí být vždy zřejmé, které úložiště vývojář používá!


V tomto článku vám ukážu, jak importovat knihovnu, kterou objevíte na GitHub, do svého projektu Android, bez ohledu na to, zda chcete knihovnu přidat jako vzdálenou závislost nebo jako místní závislost.

Přidání vzdálených závislostí

Systém sestavení Gradle pro Android Studio přidává do projektu knihovny jako modul závislosti. Tyto závislosti mohou být buď umístěny ve vzdáleném úložišti, jako je Maven nebo JCenter, nebo mohou být uloženy uvnitř vašeho projektu jako místní závislost - stačí Gradle vědět, kde je může najít.

Přidání knihovny jako vzdálené závislosti je obvykle nejrychlejším a nejsnadnějším způsobem, jak získat kód knihovny do vašeho projektu, takže se jedná o metodu, kterou se nejprve podíváme. Když přidáte knihovnu jako vzdálenou závislost, Gradle zajistí, že závislost má vše, co potřebuje ke spuštění, včetně všech tranzitivní závislosti, takže obvykle budete chtít přidat knihovnu jako vzdálenou závislost, kdykoli je to možné.


Chcete-li přidat vzdálenou závislost, musíte poskytnout Gradle dvě informace:

  • Úložiště. Gradle potřebuje znát repozitář (nebo repozitáře), kde by měl hledat vaši knihovnu (nebo knihovny). Knihovny Android mají tendenci být distribuovány prostřednictvím Maven Central nebo JCenter.
  • Kompilační prohlášení. Obsahuje název balíčku knihovny, název skupiny knihovny a verzi knihovny, kterou chcete použít.

V ideálním případě by vám knihovna GitHub měla poskytnout všechny tyto informace. Ve skutečnosti tomu tak není vždy, ale začněme s nejlepším scénářem případu a předpokládejme, že stránka GitHub v knihovně tyto informace obsahuje.

Přidání vzdálené závislosti pomocí JCenter

StyleableToast je knihovna, která vám umožní přizpůsobit každou část toastů Androidu, včetně změny barvy pozadí, poloměru rohu a písma a přidání ikon. Poskytuje také všechny informace, které potřebujete k přidání této knihovny do projektu, v její vyhrazené části „Instalace“. Zde vidíme, že tento projekt je distribuován prostřednictvím JCenter.

Když vytvoříte projekt s nejnovějšími verzemi aplikace Android Studio, soubory build.gradle projektu jsou již nastaveny na podporu JCenter. Pokud otevřete soubor build.gradle na úrovni projektu, uvidíte, že JCenter je již zahrnut v sekci „všechny projekty / repozitáře“:

allprojects {repozitáře {jcenter ()}}

Soubor build.gradle na úrovni projektu obsahuje dva bloky „úložiště“, ale blok „buildscript / repozitáře“ je místo, kde definujete, jak Gradle provede toto sestavení. Do této sekce byste neměli přidávat žádné závislosti modulů.

Vzhledem k tomu, že váš projekt je již nakonfigurován pro kontrolu JCenter, jediné, co musíme udělat, je přidat náš kompilační příkaz do souboru build.gradle na úrovni modulu.

Ještě jednou nám StyleableToast poskytne přesně ty informace, které potřebujeme, takže jednoduše zkopírujte kompilační prohlášení ze stránky GitHub StyleableToast a vložte jej do svého souboru Gradle:

dependencies {compile com.muddzdev: styleabletoast: 1.0.8}

Synchronizujte své soubory Gradle, buď kliknutím na banner „Synchronizovat“, nebo výběrem ikony „Projekt synchronizace se soubory Gradle“ na panelu nástrojů. Gradle poté požádá server JCenter o kontrolu, zda existuje knihovna Styleabletoast, a stáhne všechny své soubory. Nyní jste připraveni začít tuto knihovnu používat!

2. Přidání vzdálené závislosti s Maven Central

Pokud stránka GitHub projektu uvede, že tato knihovna je distribuována prostřednictvím Maven Central, pak musíte prozradit Gradle, aby místo toho zkontroloval Maven Central.

Otevřete soubor build.gradle na úrovni projektu a přidejte Maven Central do bloku „allprojects“:

allprojects {repozitáře {mavenCentral ()}}

Odtud je zbytek procesu úplně stejný: otevřete soubor build.gradle na úrovni modulu, přidejte kompilační příkaz a synchronizujte s Gradle.

3. Přidání vzdálené závislosti hostované na vlastním serveru

Občas se můžete setkat s projektem, který je stále distribuován prostřednictvím JCenter nebo Maven Central, ale vývojář se rozhodl hostit svůj projekt na svém vlastním serveru. V takovém případě by vám na stránce GitHub projektu mělo být řečeno, abyste použili velmi specifickou adresu URL, například repozitář Crashlytics Kit společnosti Fabric je umístěn na adrese https://maven.fabric.io/public.

Pokud vidíte tento druh adresy URL, musíte otevřít soubor build.gradle na úrovni projektu a poté deklarovat (v tomto případě Maven) spolu s přesnou adresou URL:

úložiště {maven {url https://maven.fabric.io/public}}

Poté můžete přidat příkaz kompilace a synchronizovat soubory jako obvykle.

Co když nemůžu najít úložiště a / nebo kompilační prohlášení?

Až dosud jsme byli optimističtí a předpokládali jsme, že projekt GitHub vždy řekne vám všechny informace, které potřebujete vědět. Bohužel tomu tak není vždy, takže se přesuneme od nejlepšího scénáře k nejhoršímu scénáři a představte si, že stránka GitHub projektu vám neposkytuje žádné informace o úložišti a prohlášení o kompilaci, které je třeba použít.

V tomto scénáři můžete buď:

  • Použijte JitPack.
  • Klonujte celé úložiště a importujte jeho kód do svého projektu jako svůj vlastní modul.

Pomocí JitPack

JitPack je úložiště balíčků pro Git, které vám umožňuje přidat jakýkoli projekt GitHub jako vzdálenou závislost. Dokud knihovna obsahuje soubor sestavení, JitPack může vygenerovat všechny informace, které potřebujete k přidání této knihovny do projektu.

Prvním krokem je otevření souboru build.gradle na úrovni projektu a přidání JitPack jako úložiště:

allprojects {repozitáře {maven {url https://jitpack.io}}}

Poté můžete pomocí webu JitPack vygenerovat kompilační prohlášení založené na adrese URL GitHub tohoto projektu:

  • Ve webovém prohlížeči přejděte na stránku knihovny GitHub v knihovně. Zkopírujte jeho URL.
  • Přejděte na web JitPack.
  • Vložte adresu URL do vyhledávacího pole na webu a poté klikněte na doprovodné tlačítko Vyhledat.
  • Na webové stránce se poté zobrazí tabulka všech verzí této knihovny, která bude rozdělena na různé karty: Releases, Builds, Branches and Commit. Vydání obvykle bývají stabilnější, zatímco část Commit obsahuje nejnovější změny.

  • Jakmile se rozhodnete, kterou verzi chcete použít, klikněte na příslušné tlačítko „Získat“.
  • Web by se měl aktualizovat, aby zobrazoval přesný kompilační příkaz, který potřebujete použít.

  • Zkopírujte / vložte tento kompilační příkaz do souboru build.gradle na úrovni modulu.
  • Synchronizujte své soubory Gradle a jste připraveni začít používat svou knihovnu!

Klonování projektu GitHub

Pokud si nejste jisti úložištěm knihovny nebo výpisem kompilace, možná budete chtít klonovat projekt GitHub. Klonování vytvoří kopii veškerého kódu a zdrojů projektu GitHub a uloží tuto kopii do místního počítače. Poté můžete klon importovat do svého projektu jako svůj vlastní modul a použít jej jako závislost modulu.

Tato metoda může být časově náročná a import celého kódu projektu může způsobit konflikty se zbytkem projektu. Klonování vám však poskytuje přístup ke všem kódům knihovny, takže tato metoda je ideální, pokud chcete knihovnu přizpůsobit, například vylepšením kódu tak, aby se lépe integrovala se zbytkem vašeho projektu, nebo dokonce přidáním nových funkcí (i když Pokud máte pocit, že by vaše změny mohly těžit z jiných lidí, možná byste měli zvážit, jak přispět ke svému vylepšení zpět do projektu).

Klonování projektu GitHub:

  • Vytvořte si účet GitHub.
  • Na úvodní obrazovce Android Studio vyberte možnost „Checkout from Version Control“.
  • Zadejte přihlašovací údaje GitHubu.
  • Otevřete webový prohlížeč, přejděte do úložiště GitHub, které chcete klonovat, a potom zkopírujte / vložte jeho URL do dialogu Android Studio.
  • Určete místní adresář, do kterého chcete ukládat klonované úložiště.
  • Pojmenujte tento adresář a klikněte na „Klonovat“.

Nyní máte kopii kódu knihovny, můžete ji importovat do svého projektu Android jako nový modul:

  • Otevřete projekt, ve kterém chcete použít klonovanou knihovnu, a na panelu nástrojů aplikace Android Studio vyberte „Soubor> Nový> Importovat modul“.
  • Klikněte na tlačítko se třemi tečkami a přejděte do svého klonovaného úložiště. Vyberte toto úložiště a klikněte na „OK“.
  • Klikněte na tlačítko Dokončit.
  • Na panelu nástrojů Android Studio vyberte „Soubor> Struktura projektu“.
  • V nabídce vlevo vyberte modul, ve kterém chcete tuto knihovnu použít.
  • Vyberte kartu „Závislosti“.

  • Vyberte malou ikonu „+“ a poté „Závislost modulu“.
  • Vyberte modul knihovny a klikněte na tlačítko „OK“.
  • Ukončete okno „Struktura projektu“.

V závislosti na knihovně, kterou používáte, možná budete muset před kompilací projektu provést některé úpravy importovaného kódu. Pokud si například karta Android Studio stěžuje na nekompatibilní minSdkVersions, je pravděpodobné, že API používaná knihovnou nejsou kompatibilní s verzemi platformy Android definované v souboru build.gradle vašeho projektu. Podobně, pokud si Android Studio stěžuje na buildToolsVersion vašeho projektu, je pravděpodobné, že existuje nesoulad mezi verzí definovanou v knihovně a verzí definovanou kdekoli v projektu. V obou těchto scénářích budete muset zkontrolovat hodnoty definované v obou souborech build.gradle a odpovídajícím způsobem je změnit.

Odstraňování problémů

Když pracujete žádný druh softwaru třetích stran, zpravidla se setkáte s nekompatibilitami, chybami a všude kolem podivný chování ve srovnání s tím, kdy používáte sadu softwaru, který byl vyvinut stejným týmem a kde každá část skládačky byla speciálně navržena pro spolupráci.

Pokud se po přidání knihovny do projektu setkáte s problémy, zkuste následující opravy:

  • Zkontrolujte, zda jste omylem nepřidali více verzí stejné knihovny. Pokud aplikace Android Studio hlásí chybu „definovat více souborů DEX…“, možná jste do projektu přidali stejnou knihovnu více než jednou. Závislosti svého modulu můžete zkontrolovat výběrem položky „Soubor> Struktura projektu“ na panelu nástrojů Android Studio, následným výběrem modulu, který chcete prozkoumat, a kliknutím na kartu „Závislosti“. Pokud se knihovna v tomto okně objeví vícekrát, vyberte duplikát a kliknutím na malou ikonu „-“ ji odeberte.
  • Prohledat internet. Vždy existuje šance, že se jiní lidé setkali se stejným problémem jako vy. Proto proveďte rychlé vyhledávání na Googlu a zjistěte, zda někdo o tomto problému zveřejnil příspěvky na fórech nebo komunitách, jako je Stackoverflow. Můžete dokonce mít štěstí a najít blog nebo výukový program, který obsahuje pokyny, jak tento konkrétní problém vyřešit.
  • Vyčistěte a znovu vytvořte svůj projekt. K vyřešení vašeho problému může někdy stačit výběr „Sestavit> Vyčistit projekt“ na panelu nástrojů Android Studio, následovaný „Sestavit> Obnovit projekt“.
  • A pokud všechno ostatní selže ... Správné fungování softwaru třetích stran někdy vyžaduje trochu pokusu a omylu, takže pokud existuje alternativní způsob importu vybrané knihovny, vždy stojí za vyzkoušení. To, že se váš projekt po importu klonovaného úložiště odmítá kompilovat, nemusí nutně znamenat, že bude mít stejnou reakci, pokud se pokusíte použít stejnou knihovnu jako vzdálenou závislost.

Zabalení

V tomto článku jsme se zabývali tím, jak můžete do svého projektu Android přidat jakoukoli knihovnu, kterou objevíte na GitHubu, bez ohledu na to, zda je tato knihovna distribuována prostřednictvím JCenter nebo Maven Central. A i když nemáte ponětí, jaké úložiště nebo kompilační prohlášení musíte použít, máte vždy možnost použít JitPack nebo naklonovat kód knihovny.

Objevili jste v GitHubu nějaké skvělé knihovny Android? Dejte nám vědět v komentářích níže!

Pokud jte na trhu LG G8 ThinQ a také na trhu za 200 $ zdarma - máme dohodu pro vá!Právě teď, od AT&T, můžete zíkat LG G8 ThinQ za žádné peníze dolů (pro kv...

Před oficiálním zahájením MWC polečnot LG nyní předtavila nový LG G8 ThinQ. Tento tenký telefon Androidem může vypadat jako loňký telefon G7, ale uvnitř obahuj...

Nezapomeňte Se Podívat