Ajoutez n'importe quelle bibliothèque GitHub à Android Studio, à l'aide de Maven, JCenter et JitPack

Auteur: Lewis Jackson
Date De Création: 13 Peut 2021
Date De Mise À Jour: 1 Juillet 2024
Anonim
Ajoutez n'importe quelle bibliothèque GitHub à Android Studio, à l'aide de Maven, JCenter et JitPack - Applications
Ajoutez n'importe quelle bibliothèque GitHub à Android Studio, à l'aide de Maven, JCenter et JitPack - Applications

Contenu


Très peu de projets Android sont une île! La majorité des projets Android ont des dépendances sur un certain nombre d'autres composants, y compris des bibliothèques Android tierces.

Une bibliothèque Android contient les mêmes fichiers que ceux rencontrés dans un projet Android classique, tels que le code source, les ressources et un manifeste. Toutefois, au lieu de compiler dans un package Android (APK) pouvant s'exécuter sur un périphérique Android, une bibliothèque est compilée dans une archive de code que vous pouvez utiliser en tant que dépendance de projet. Ces bibliothèques vous donnent accès à un large éventail de fonctionnalités supplémentaires, y compris des fonctionnalités non incluses dans la plate-forme Android vanilla.

GitHub est l’un des meilleurs endroits pour trouver des bibliothèques Android. Cependant, obtenir une bibliothèque à partir de sa page GitHub et dans votre projet n’est pas toujours simple, d’autant plus qu'il existe plusieurs référentiels différents que les développeurs peuvent utiliser pour distribuer leurs projets GitHub - et il n’est pas toujours évident de savoir quel référentiel un développeur utilise!


Dans cet article, je vais vous montrer comment importer n'importe quelle bibliothèque découverte sur GitHub dans votre projet Android, que vous souhaitiez ajouter la bibliothèque en tant que dépendance à distance ou en tant que dépendance locale.

Ajout de dépendances distantes

Le système de construction Gradle d’Android Studio ajoute des bibliothèques à votre projet en tant que module. les dépendances. Ces dépendances peuvent soit être situées dans un référentiel distant, tel que Maven ou JCenter, soit être stockées dans votre projet, en tant que dépendance locale - vous devez simplement indiquer à Gradle où il peut trouver ces dépendances.

L’ajout d’une bibliothèque en tant que dépendance à distance est généralement le moyen le plus rapide et le plus simple d’obtenir le code d’une bibliothèque dans votre projet; c’est donc la méthode que nous allons examiner en premier. Lorsque vous ajoutez une bibliothèque en tant que dépendance à distance, Gradle s'assure que cette dépendance a tout ce dont elle a besoin pour s'exécuter, y compris les transitif dépendances, vous voudrez donc généralement ajouter une bibliothèque en tant que dépendance distante autant que possible.


Pour ajouter une dépendance à distance, vous devez fournir à Gradle deux informations:

  • Le référentiel. Gradle doit connaître le ou les référentiels dans lesquels il doit rechercher votre ou vos bibliothèques. Les bibliothèques Android ont tendance à être distribuées via Maven Central ou JCenter.
  • L'instruction de compilation. Celui-ci contient le nom du paquet de la bibliothèque, le nom du groupe de la bibliothèque et la version de la bibliothèque que vous souhaitez utiliser.

Idéalement, la page GitHub de la bibliothèque devrait vous fournir toutes ces informations. En réalité, ce n’est pas toujours le cas, mais commençons par le meilleur des cas et supposons que la page GitHub de la bibliothèque inclue ces informations.

Ajout d'une dépendance à distance avec JCenter

StyleableToast est une bibliothèque qui vous permet de personnaliser chaque partie des toasts d’Android, y compris la modification de la couleur de l’arrière-plan, du rayon des coins et de la police ainsi que l’ajout d’icônes. Il fournit également toutes les informations nécessaires pour ajouter cette bibliothèque à votre projet, dans sa section dédiée "Installation". Ici, nous pouvons voir que ce projet est distribué via JCenter.

Lorsque vous créez un projet avec les dernières versions d’Android Studio, les fichiers build.gradle de votre projet sont déjà configurés pour prendre en charge JCenter. Si vous ouvrez votre fichier build.gradle au niveau du projet, vous verrez que JCenter est déjà inclus dans la section ‘allprojects / repositories’:

allprojects {repositories {jcenter ()}}

Notez que le fichier build.gradle au niveau du projet contient deux blocs de «référentiels», mais le bloc «buildscript / référentiels» vous permet de définir la manière dont Gradle effectue cette construction. Vous ne devez ajouter aucune dépendance de module à cette section.

Étant donné que votre projet est déjà configuré pour vérifier JCenter, la seule chose à faire est d’ajouter notre instruction de compilation au fichier build.gradle au niveau du module.

Une fois encore, StyleableToast nous fournit exactement les informations dont nous avons besoin. Il vous suffit donc de copier la déclaration de compilation depuis la page GitHub de StyleableToast et de la coller dans votre fichier Gradle:

dépendances {compile com.muddzdev: styleabletoast: 1.0.8}

Synchronisez vos fichiers Gradle en cliquant sur la bannière "Sync" ou en sélectionnant l’icône "Synchroniser le projet avec les fichiers Gradle" dans la barre d’outils. Gradle interrogera ensuite le serveur JCenter pour vérifier que la bibliothèque Styleabletoast existe et téléchargera tous ses fichiers. Vous êtes maintenant prêt à utiliser cette bibliothèque!

2. Ajouter une dépendance à distance avec Maven Central

Si la page GitHub du projet indique que cette bibliothèque est distribuée via Maven Central, vous devez également demander à Gradle de vérifier Maven Central.

Ouvrez votre fichier build.gradle au niveau du projet et ajoutez Maven Central au bloc «allprojects»:

allprojects {référentiels {mavenCentral ()}}

À partir de là, le reste du processus est exactement le même: ouvrez votre fichier build.gradle au niveau du module, ajoutez l’instruction de compilation et synchronisez-vous avec Gradle.

3. Ajouter une dépendance distante hébergée sur son propre serveur

Vous rencontrerez parfois un projet encore distribué via JCenter ou Maven Central, mais le développeur a choisi d’héberger son projet sur son propre serveur. Dans ce cas, la page GitHub du projet doit vous indiquer d’utiliser une URL très spécifique. Par exemple, le référentiel du kit Crashlytics de Fabric est situé à l’adresse https://maven.fabric.io/public.

Si vous voyez ce type d'URL, vous devez ouvrir votre fichier build.gradle au niveau du projet, puis déclarer le référentiel (dans cet exemple, Maven) avec l'URL exacte:

référentiels {maven {url https://maven.fabric.io/public}}

Vous pouvez ensuite ajouter la déclaration de compilation et synchroniser vos fichiers normalement.

Que se passe-t-il si je ne trouve pas le référentiel et / ou l’instruction de compilation?

Jusqu’à présent, nous avons été optimistes et avons supposé que le GitHub du projet toujours vous dit toutes les informations que vous devez savoir. Malheureusement, ce n’est pas toujours le cas. Passons donc du scénario optimal au scénario extrême. Imaginons que la page GitHub du projet ne vous fournisse aucune information sur le référentiel et la déclaration de compilation à utiliser.

Dans ce scénario, vous pouvez soit:

  • Utilisez JitPack.
  • Clonez le référentiel entier et importez son code dans votre projet en tant que son propre module.

Utiliser JitPack

JitPack est un référentiel de paquets pour Git qui vous permet d'ajouter n'importe quel projet GitHub en tant que dépendance à distance. Tant que la bibliothèque contient un fichier de construction, JitPack peut générer toutes les informations nécessaires pour ajouter cette bibliothèque à votre projet.

La première étape consiste à ouvrir votre fichier build.gradle au niveau du projet et à ajouter JitPack en tant que référentiel:

allprojects {repositories {maven {url https://jitpack.io}}}

Vous pouvez ensuite utiliser le site Web JitPack pour générer une instruction de compilation, basée sur l’URL GitHub de ce projet:

  • Dans votre navigateur Web, accédez à la page GitHub de la bibliothèque. Copiez son URL.
  • Rendez-vous sur le site Web de JitPack.
  • Collez l’URL dans le champ de recherche du site Web, puis cliquez sur le bouton ‘Rechercher’ associé.
  • La page Web affichera ensuite un tableau de toutes les versions de cette bibliothèque, réparties dans différents onglets: Communiqués, Constructions, Branches et Commits. En général, les versions ont tendance à être plus stables, alors que la section Commit contient les dernières modifications.

  • Une fois que vous avez choisi la version que vous souhaitez utiliser, cliquez sur le bouton "Get It" correspondant.
  • Le site Web devrait mettre à jour pour afficher la déclaration de compilation exacte que vous devez utiliser.

  • Copiez / collez cette instruction de compilation dans le fichier build.gradle de niveau module de votre projet.
  • Synchronisez vos fichiers Gradle et vous êtes prêt à utiliser votre bibliothèque!

Cloner un projet GitHub

Si vous avez des doutes sur le référentiel d’une bibliothèque et / ou une instruction de compilation, vous pouvez également choisir: cloner le projet GitHub. Le clonage crée une copie de tous les codes et ressources du projet GitHub, et stocke cette copie sur votre ordinateur local. Vous pouvez ensuite importer le clone dans votre projet en tant que son propre module et l'utiliser en tant que dépendance de module.

Cette méthode peut prendre beaucoup de temps et l'importation de l'intégralité du code d'un projet peut entraîner des conflits avec le reste de votre projet. Cependant, le clonage vous donne accès à tout le code de la bibliothèque. Cette méthode est donc idéale si vous souhaitez personnaliser la bibliothèque, par exemple en modifiant son code pour une meilleure intégration avec le reste de votre projet, ou même en ajoutant de nouvelles fonctionnalités (bien que si vous pensez que d'autres personnes pourraient tirer profit de vos modifications, vous pouvez alors envisager de contribuer vos améliorations au projet).

Pour cloner un projet GitHub:

  • Créez un compte GitHub.
  • Sélectionnez "Checkout from Version Control" dans l'écran "Welcome" de Android Studio.
  • Entrez vos informations d'identification GitHub.
  • Ouvrez votre navigateur Web, accédez au référentiel GitHub que vous souhaitez cloner, puis copiez / collez son URL dans la boîte de dialogue Android Studio.
  • Spécifiez le répertoire local où vous souhaitez stocker le référentiel cloné.
  • Attribuez un nom à ce répertoire, puis cliquez sur "Cloner".

Maintenant que vous avez une copie du code de la bibliothèque, vous pouvez importer cette bibliothèque dans votre projet Android, en tant que nouveau module:

  • Ouvrez le projet dans lequel vous souhaitez utiliser votre bibliothèque clonée, puis sélectionnez ‘Fichier> Nouveau> Module d’importation’ dans la barre d’outils Android Studio.
  • Cliquez sur le bouton en trois points et accédez à votre référentiel cloné. Sélectionnez ce référentiel, puis cliquez sur "OK".
  • Cliquez sur "Terminer".
  • Sélectionnez "Fichier> Structure du projet" dans la barre d’outils Android Studio.
  • Dans le menu de gauche, sélectionnez le module dans lequel vous souhaitez utiliser cette bibliothèque.
  • Sélectionnez l’onglet ‘Dépendances’.

  • Sélectionnez la petite icône "+", puis "Dépendance du module".
  • Sélectionnez votre module de bibliothèque, puis cliquez sur "OK".
  • Quittez la fenêtre ‘Structure du projet’.

Selon la bibliothèque que vous utilisez, vous devrez peut-être apporter des modifications à votre code importé avant que votre projet ne soit compilé. Par exemple, si l’onglet «s» d’Android Studio se plaint de incompatibilités minSdkVersions, il est alors probable que les API utilisées par la bibliothèque ne soient pas compatibles avec les versions de la plate-forme Android définies dans le fichier build.gradle de votre projet. De même, si Android Studio se plaint de la version buildToolsVersion de votre projet, il est probable qu’il existe une différence entre la version définie dans la bibliothèque et la version définie ailleurs dans votre projet. Dans ces deux scénarios, vous devez vérifier les valeurs définies dans les deux fichiers build.gradle et les modifier en conséquence.

Dépannage

Quand vous travaillez avec tout type de logiciel tiers, en règle générale, vous êtes plus susceptible de rencontrer des incompatibilités, des bugs et des étrange comportement, comparé à l’utilisation d’une suite de logiciels développée par la même équipe et où chaque pièce du casse-tête a été spécialement conçue pour fonctionner ensemble.

Si vous rencontrez des problèmes après avoir ajouté une bibliothèque à votre projet, essayez les correctifs suivants:

  • Vérifiez que vous n’avez pas ajouté plusieurs versions de la même bibliothèque par inadvertance. Si Android Studio signale une erreur «Plusieurs fichiers DEX define…», vous avez peut-être ajouté la même bibliothèque à votre projet plusieurs fois. Vous pouvez examiner les dépendances de votre module en sélectionnant "Fichier> Structure de projet" dans la barre d’outils Android Studio, puis en sélectionnant le module à examiner, puis en cliquant sur l’onglet "Dépendances". Si une bibliothèque apparaît plusieurs fois dans cette fenêtre, sélectionnez la copie, puis cliquez sur la petite icône «-» pour la supprimer.
  • Rechercher sur le Web. Il y a toujours une chance que d'autres personnes aient rencontré le même problème que vous, alors effectuez une recherche rapide sur Google pour voir si quelqu'un a publié des informations à ce sujet sur des forums ou des communautés comme Stackoverflow. Vous pouvez même avoir de la chance et trouver un blog ou un didacticiel contenant des instructions pour résoudre ce problème.
  • Nettoyez et reconstruisez votre projet. Parfois, sélectionner «Construire> Nettoyer le projet» dans la barre d’outils Android Studio, suivi de «Construire> Reconstruire le projet» peut suffire à résoudre votre problème.
  • Et si tout échoue… Pour que les logiciels tiers fonctionnent correctement, il faut parfois quelques essais et erreurs. Par conséquent, s’il existe une autre méthode d’importation de la bibliothèque que vous avez choisie, cela vaut toujours la peine d’essayer. Le fait que votre projet refuse de compiler après avoir importé un référentiel cloné ne signifie pas nécessairement que sa réaction sera la même si vous essayez d'utiliser cette même bibliothèque en tant que dépendance à distance.

Emballer

Dans cet article, nous avons examiné comment ajouter à votre projet Android n'importe quelle bibliothèque découverte sur GitHub, que cette bibliothèque soit distribuée via JCenter ou Maven Central. Et, même si vous n’avez aucune idée du référentiel ou de l’instruction de compilation que vous devez utiliser, vous avez toujours la possibilité d’utiliser JitPack ou de cloner le code de la bibliothèque.

Avez-vous découvert d'excellentes bibliothèques Android sur GitHub? Faites-nous savoir dans les commentaires ci-dessous!

Mie à jour du 20 eptembre 2019 (09h55 HE):elon9to5Google, la lite de appareil amung Android 10 ci-deou et faue, comme nou le penion. L’image originale a apparemment été créée ...

Mie à jour du 2 janvier 2018 (10h22 HE):Nou epérion que amung repecterait la feuille de route publiée concernant le mie à jour d'Android 9 Pie pour e appareil, mai (comme on po...

Nous Vous Recommandons