Comment puis-je ajouter un projet de bibliothèque à Android Studio?

Alexander Kulyakhtin 09/10/2017. 29 answers, 544.786 views
android android actionbarsherlock android-library android-studio android-studio

Comment puis-je ajouter un projet de bibliothèque (tel que Sherlock ABS) à Android Studio ?

(Pas à l'ancien bloc ADT Eclipse, mais à la nouvelle Android Studio .)

4 Comments
25 Daniel Smith 05/21/2013
Oui, ce qui s'est passé était beaucoup plus déroutant qu'il ne l'aurait été ... pas comme s'il s'agissait mieux d'éclipser.
3 user1785900 01/19/2014
La vidéo YouTube How to Add Libraries to Android Studio explique le processus.
1 craned 10/16/2014
Si vous utilisez Gradle , consultez cette réponse StackOverflow .
1 Simon 12/20/2014
Voici une vidéo que j'ai trouvé très utile: youtube.com/watch?v=1MyBO9z7ojk

29 Answers


froger_mcs 05/23/2017.

Update for Android Studio 1.0

Depuis que Android Studio 1.0 a été publié (et beaucoup de versions entre v1.0 et l'un des premiers depuis l'instant de ma réponse précédente), certaines choses ont changé.

Ma description est axée sur l'ajout d'un projet de bibliothèque externe à la main via les fichiers Gradle (pour mieux comprendre le processus). Si vous souhaitez ajouter une bibliothèque via le créateur Android Studio, vérifiez la réponse ci-dessous avec un guide visuel (il y a des différences entre Android Studio 1.0 et celles des captures d'écran, mais le processus est très similaire).

Avant de commencer à ajouter une bibliothèque à votre projet à la main, envisagez d'ajouter la dépendance externe. Il ne dérangera pas la structure de votre projet. Presque toutes les bibliothèques Android connues sont disponibles dans un dépôt Maven et son installation ne prend qu'une seule ligne de code dans le fichier app/build.gradle :

dependencies {
     compile 'com.jakewharton:butterknife:6.0.0'
} 

Adding the library

Voici le processus complet d'ajout de la bibliothèque Android externe à notre projet:

  1. Créez un nouveau projet via le créateur Android Studio. Je l'ai appelé HelloWorld .
  2. Voici la structure de projet originale créée par Android Studio:
HelloWorld/
      app/
           - build.gradle  // local Gradle configuration (for app only)
           ...
      - build.gradle // Global Gradle configuration (for whole project)
      - settings.gradle
      - gradle.properties
      ... 
  1. Dans le répertoire racine ( HelloWorld/ ), créez un nouveau dossier: /libs dans lequel nous placerons nos bibliothèques externes (cette étape n'est pas nécessaire - uniquement pour garder une structure de projet plus propre).
  2. Collez votre bibliothèque dans le dossier nouvellement créé /libs . Dans cet exemple, j'ai utilisé la bibliothèque PagerSlidingTabStrip (il suffit de télécharger le code ZIP de GitHub, renommer le répertoire de la bibliothèque sur "PagerSlidingTabStrip" et le copier). Voici la nouvelle structure de notre projet:
HelloWorld/
      app/
           - build.gradle  // Local Gradle configuration (for app only)
           ...
      libs/
           PagerSlidingTabStrip/
                - build.gradle // Local Gradle configuration (for library only)
      - build.gradle // Global Gradle configuration (for whole project)
      - settings.gradle
      - gradle.properties
      ... 
  1. Modifiez les paramètres.gradle en ajoutant votre bibliothèque à include . Si vous utilisez un chemin personnalisé comme je l'ai fait, vous devez également définir le répertoire du projet pour notre bibliothèque. Un ensemble de settings.gradle devrait ressembler ci-dessous:

    include ':app', ':PagerSlidingTabStrip'
    project(':PagerSlidingTabStrip').projectDir = new File('libs/PagerSlidingTabStrip') 

5.1 Si vous faites face à une erreur "Configuration par défaut", essayez ceci au lieu de l'étape 5,

include ':app'
    include ':libs:PagerSlidingTabStrip' 
  1. Dans app/build.gradle ajoutez notre projet de bibliothèque en tant que dépendance:

    dependencies {
        compile fileTree(dir: 'libs', include: ['*.jar'])
        compile 'com.android.support:appcompat-v7:21.0.3'
        compile project(":PagerSlidingTabStrip")
    } 

6.1. Si vous avez suivi l'étape 5.1, suivez ceci au lieu de 6,

dependencies {
        compile fileTree(dir: 'libs', include: ['*.jar'])
        compile 'com.android.support:appcompat-v7:21.0.3'

        compile project(":libs:PagerSlidingTabStrip")
    } 
  1. Si votre projet de bibliothèque n'a pas de fichier build.gradle , vous devez le créer manuellement. Voici un exemple de ce fichier:

    apply plugin: 'com.android.library'
    
        dependencies {
            compile 'com.android.support:support-v4:21.0.3'
        }
    
        android {
            compileSdkVersion 21
            buildToolsVersion "21.1.2"
    
            defaultConfig {
                minSdkVersion 14
                targetSdkVersion 21
            }
    
            sourceSets {
                main {
                    manifest.srcFile 'AndroidManifest.xml'
                    java.srcDirs = ['src']
                    res.srcDirs = ['res']
                }
            }
        } 
  2. De plus, vous pouvez créer une configuration globale pour votre projet qui contiendra des versions SDK et une version d'outils de construction pour chaque module pour conserver la cohérence. gradle.properties fichier gradle.properties et ajoutez des lignes:

    ANDROID_BUILD_MIN_SDK_VERSION=14
    ANDROID_BUILD_TARGET_SDK_VERSION=21
    ANDROID_BUILD_TOOLS_VERSION=21.1.3
    ANDROID_BUILD_SDK_VERSION=21 

    Maintenant, vous pouvez l'utiliser dans vos fichiers build.gradle (dans les modules d'applications et de bibliothèques) comme ci-dessous:

    //...
    android {
        compileSdkVersion Integer.parseInt(project.ANDROID_BUILD_SDK_VERSION)
        buildToolsVersion project.ANDROID_BUILD_TOOLS_VERSION
    
        defaultConfig {
            minSdkVersion Integer.parseInt(project.ANDROID_BUILD_MIN_SDK_VERSION)
            targetSdkVersion Integer.parseInt(project.ANDROID_BUILD_TARGET_SDK_VERSION)
        }
    }
    //... 
  3. C'est tout. Cliquez simplement, synchronisez le projet avec l'icône de Gradle synchroniser avec Gradle . Votre bibliothèque devrait être disponible dans votre projet.

Google I / O 2013 - Le nouveau système de développement SDK Android est une excellente présentation sur la construction d'applications Android avec Gradle Build System: Xavier Ducrohet a déclaré:

Android Studio s'appuie sur l'édition, le débogage et le profilage. Il ne s'agit plus de construire.

Au début, cela peut être un peu déroutant (surtout pour ceux qui travaillent avec Eclipse et qui n'ont jamais vu la fourmi comme moi;)), mais à la fin, Gradle nous offre de bonnes opportunités et il vaut la peine d'apprendre ce système de construction.

5 comments
6 victor n. 05/24/2013
hey there, vous avez parfaitement expliqué le vrai problème. en votant votre réponse afin que d'autres personnes puissent le voir. Une chose mineure qui n'a pas fonctionné de mon côté fait référence à la bibliothèque de support dans build.gradle de la dépendance. il s'avère que: Project / libs ... 'n'a pas fonctionné pour une raison quelconque. j'ai dû supprimer l'identification du projet. donc 'libs / ...'. et il a compilé bien. une note est que ces deux façons de référencer les chemins ou les projets sont confuses. j'espère qu'un schéma simple et unifié surgira à l'avenir. il n'y a aucune raison pour laquelle la solution originale ne fonctionnerait pas.
9 Akbar ibrahim 05/24/2013
+1. A longtemps lutté avec ça. Comme l'a dit victor n , le référencement du jar de support du projet principal du module actionbarsherlock ne fonctionne pas. Je devais faire ce qui suit pour fonctionner ... (1) Supprimez les fichiers de compilation ('libs / android-support-v4.jar') du build.gradle du projet. Le module principal ne doit avoir qu'un projet de compilation (": bibliothèques: actionbarsherlock") . (2) Ajoutez des fichiers de compilation ('libs / android-support-v4.jar') au lieu de compiler les fichiers (': HelloWorld / libs / android-support-v4.jar') dans build.gradle d'actionbarsherlock.
8 alicanbatur 11/07/2013
Pourquoi n'ai-je pas la section "Importer un module", à l'option où vous nous dirigez? J'utilise Android Studio 0.3.1
5 amalBit 02/08/2014
L'option Import Module est absente !!
147 Kyle Gobel 10/19/2014
Pourquoi est-ce si digne de confusion?

Sam Rad 07/01/2016.

Voici le guide visuel:

Update à Update pour Android Studio 0.8.2:

Dans Android Studio 0.8.2, accédez à Project Structure -> sous Modules , cliquez sur le bouton Plus, sélectionnez Import Existing Project et importez l' actionbarsherlock . Ensuite, synchronisez vos fichiers Gradle.

Si vous faites face à l'erreur

Erreur: la révision SDK Build Tools (xx.xx) est trop faible. Le minimum requis est AAAAAA

Ouvrez simplement le fichier build.gradle dans l'annuaire actionbarsherlock et mettez à jour le buildToolsVersion à celui proposé.

android {
  compileSdkVersion 19
  buildToolsVersion 'yy.y.y' 

Android Studio 0.8.2


File menu -> Project Structure... :

Premier

Module -> Import Module

Seconde

Après avoir importé le module de bibliothèque, sélectionnez your module de projet et ajoutez la dépendance:

Troisième

Ensuite, sélectionnez le imported module :

Avant

5 comments
29 amalBit 02/08/2014
L'option Module d'importation n'est pas disponible dans Android Studio4.3
3 toobsco42 08/25/2014
La clé pour que je fasse en sorte que cela fonctionne et résolte les erreurs du package non trouvé était l'étape Select your project module and add dependency dependencies { // ... compile project(':library') }
6 Rémy DAVID 10/06/2014
Cela copiera le module de la bibliothèque dans votre projet, ce qui n'est pas ce que vous voulez si vous voulez une base de code commune partagée entre plusieurs projets
CCJ 11/13/2015
@amalBit sont ... est-ce que vous êtes de l'avenir? Mais sérieusement, ils doivent faire cela comme il l'était dans Eclipse ADT; qui veut frapper un compte tiers et compiler (potentiellement) un code arbitraire dans chaque version? Cela compromet sérieusement les protocoles d'AQ et de code-gel
amalBit 11/17/2015
Il était bien retourné pendant les jours bêta de Android studio 0.4.3. En ce qui concerne l'adhésion du tiers membre, identifiez-vous, évitez d'utiliser +. Il suffit de spécifier la version que vous voulez. Si vous ne pouvez toujours pas y croire, vous pouvez créer un pot (ou un clone) de n'importe quel compte et l'utiliser.

Blackbelt 07/01/2016.

Utilisez le menu File -> Project Structure -> Modules .

J'ai commencé à l'utiliser aujourd'hui. C'est un peu différent.

Pour Sherlock, peut-être souhaitez-vous supprimer leur répertoire de test ou ajouter le fichier junit.jar au classpath.

Pour importer la bibliothèque en utilisant gradle, vous pouvez l'ajouter à la section dependencies de votre build.gradle (celle du module).

Par exemple

dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
    compile 'com.android.support:appcompat-v7:22.1.0'
    compile 'com.actionbarsherlock:actionbarsherlock:4.4.0@aar'
} 

Android Studio change.

Il existe une section intitulée «Ouvrir les paramètres du module» si vous cliquez avec le bouton droit de la souris sur un dossier de module dans la section projet d'Android Studio (j'utilise la version 0.2.10).

5 comments
1 Alexander Kulyakhtin 05/16/2013
Hmm, il dit encore android-apt-compiler: styles.xml: 5: erreur: Erreur lors de la récupération du parent pour l'élément: Aucune ressource trouvée qui correspond au prénom 'Theme.Sherlock.Light.DarkActionBar'.
Blackbelt 05/16/2013
Sous le module Sherlock -> Dépendances, j'ai l'android 4.2.2 et la bibliothèque de support v4
Blackbelt 05/16/2013
@ ρяσѕρєяK à côté du bouton d'exécution, il existe une étiquette avec Android. Si vous cliquez ici, vous trouverez Modifier la configuration. Appuyez sur et sous Dispositif cible, cliquez sur "Show Chooser Dialg"
7 fish 05/16/2013
Bonjour, j'ai le même problème que Alex ("Gradle: Erreur lors de la récupération du parent pour l'élément: Aucune ressource trouvée qui correspond au nom donné 'Theme.Sherlock.Light'.") - la dépendance Java semble être résolue correctement, IDE ne blâme pas mon SherlockActivity, mais pour une raison quelconque, Gradle ne semble pas regarder les ressources de l'ABS. Des idées?
4 Konrad Morawski 09/15/2013
Sur Android Studio 0.2.8, il n'y a pas de section Modules dans la fenêtre Project Structure du Project Structure .

Jonathan Lin 10/14/2013.

Je considérerais les dépendances, les bibliothèques Android et la lecture nécessaire de la configuration multiprojets. Prenez quelques minutes pour le faire.

En particulier, dans le cas d'un projet de bibliothèque sans jar, lisez l'extrait suivant de la source ci-dessus:

Les projets de Gradle peuvent également dépendre d'autres projets de gradle en utilisant une configuration multiprojets. Une configuration multiprojets fonctionne habituellement en ayant tous les projets sous forme de sous-dossiers d'un projet racine donné.

Par exemple, donné à la structure suivante:

MyProject/
 + app/
 + libraries/
    + lib1/
    + lib2/ 

Nous pouvons identifier 3 projets. Gradle les fera référence avec le nom suivant:

:app
:libraries:lib1
:libraries:lib2 

Chaque projet aura son propre build.gradle déclarant comment il est construit. En outre, il y aura un fichier appelé settings.gradle à la racine déclarant les projets. Cela donne la structure suivante:

MyProject/
 | settings.gradle
 + app/
    | build.gradle
 + libraries/
    + lib1/
       | build.gradle
    + lib2/
       | build.gradle 

Le contenu de settings.gradle est très simple:

include ':app', ':libraries:lib1', ':libraries:lib2' 

Cela définit quel dossier est en fait un projet Gradle.

Le projet de l'application est susceptible de dépendre des bibliothèques, ce qui se fait en déclarant les dépendances suivantes:

dependencies {
    compile project(':libraries:lib1')
} 

Veuillez noter qu'il n'y avait que peu ou pas d'utilisation de l'interface graphique Android Studio pour que cela se produise.

Je suis actuellement en train d'utiliser les sous-modules git pour lier la bibliothèque imbriquée à la bibliothèque réelle git repo pour éviter un désordre de dépendance.

4 comments
Jonathan Lin 10/14/2013
S'il vous plaît, augmentez vos chances si vous avez trouvé cela utile, afin que d'autres puissent éviter la douleur et se déplacer plus vite.
RichieHH 03/24/2014
Très utile et, plus important encore, ne pas jouer aux caprices de gui du jour.
1 dcunited001 04/20/2014
Je vous remercie beaucoup d'avoir inclus la seule réponse qui a du sens. toutes les autres réponses sont obsolètes et ne fonctionnent plus. Je n'ai même pas essayé CS à Virginia Tech parce que les deux premières années ont commencé à apprendre à faire un clic sur eclipse. Il n'a pas fait de bon sens, mais en voyant le résultat de gradle des clics aléatoires dans un IDE.
velis 06/01/2015
Merci pour le conseil des sous-modules git. J'utilisais la jonction avant, mais maintenant je suis passé à SVN externes. Fonctionne comme un charme.

René Michel 07/01/2016.

Je viens de trouver un moyen plus simple (plutôt que d'écrire directement dans les fichiers .gradle).

Ceci est pour Android Studio 1.1.0.

  1. File menu -> New Module... :

    Importer le projet existant

    Cliquez sur "Importer un projet existant".

  2. Sélectionnez la bibliothèque souhaitée et le module désiré.

  3. Cliquez sur Terminer. Android Studio importera la bibliothèque dans votre projet. Il synchronisera les fichiers gradle.

  4. Ajoutez le module importé aux dépendances de votre projet.

    Cliquez avec le bouton droit sur le dossier de l'application -> Ouvrir les paramètres du module -> accédez à l'onglet dépendances -> Cliquez sur le bouton '+' -> cliquez sur la dépendance du module.

    Le module de la bibliothèque sera ensuite ajouté aux dépendances du projet.

    Ajouter un module de bibliothèque

  5. ???

  6. Profit


Vilen 07/01/2016.

La manière la plus simple que j'ai trouvé d'inclure un projet de bibliothèque externe est (par exemple, inclure une bibliothèque Facebook qui stocke un répertoire dans le dossier des dépendances):

  1. Dans settings.gradle add

    include ':facebook'
    
    project(':facebook').projectDir = new File(settingsDir, '../dependencies/FacebookSDK') 
  2. Dans la section des dépendances build.gradle, ajoutez

    compile project ('facebook') 

Tout le reste à faire est de synchroniser le projet avec les fichiers gradle.

4 comments
Rajnish Mishra 03/23/2015
Bonjour Vilen Qu'est-ce que les paramètres? Cliquez ici
Vilen 04/02/2015
Bonjour Rajnish. À partir de la documentation: settingsDir Renvoie le répertoire de configuration de la construction. Le répertoire de paramètres est le répertoire contenant le fichier de configuration. Renvoie: le répertoire des paramètres. Ne retourne jamais nulle.
Rajnish Mishra 04/03/2015
Les deux points avant / les dépendances sont plus importants pour être pris en charge Votre réponse m'aide beaucoup ... Merci
Solata 11/18/2015
NOTE: pour l'évaluation de la chaîne à gradle, vous devez utiliser la double citation (")." Enregistrer le jour "pour moi. Lié à cela

Eugene Bosikov 07/01/2016.

Un moyen simple d'ajouter un fichier JAR en tant que bibliothèque à votre projet Android Studio:

a) Copiez vos fichiers * .jar

b) Coller dans le répertoire libs sous vos projets:

Entrez la description de l'image ici

c) Ajouter à build.gradle:

dependencies {
    ...
    compile files('libs/ScanAPIAndroid.jar', 'libs/ScanAPIFactoryAndroid.jar', .., ..)
} 

b) Si votre projet à partir de l'exemple com.example.MYProject et les bibliothèques com.example.ScanAPI possède le même espace de noms , exemple, Android Studio vérifiera votre création et crée toutes les modifications nécessaires dans votre projet. Ensuite, vous pouvez consulter ces paramètres dans le menu File -> Project Structure .

c) Si votre projet et vos bibliothèques ont un espace de noms différent, vous devez cliquer avec le bouton droit de la souris sur la bibliothèque et sélectionner l'option "Ajouter en tant que bibliothèque" et sélectionner le type de ce dont vous avez besoin.

Rappelez-vous que l'option "Structure du projet" ne fait aucun changement automatique dans "build.gradle" dans la version actuelle d'Android Studio (0.2.3). Peut-être que cette fonctionnalité sera disponible dans les prochaines versions.


pathe.kiran 06/27/2016.

Option 1: déposer des fichiers dans le libs / répertoire de Project

Le fichier build.gradle pertinent se mettra automatiquement à jour.

Option 2: Modifier le fichier build.gradle manuellement

Ouvrez votre fichier build.gradle et ajoutez une nouvelle règle de construction à la fermeture des dépendances. Par exemple, si vous souhaitez ajouter Google Play Services, la section de dépendances de votre projet ressemblerait à ceci:

dependencies {
     compile fileTree(dir: 'libs', include: ['*.jar'])
     compile 'com.google.android.gms:play-services:6.5.+'
   } 

Option 3: Utiliser l'interface utilisateur de Android Studio

Dans le panneau Projet, Control + cliquez sur le module auquel vous souhaitez ajouter la dépendance et sélectionnez Ouvrir les paramètres du module.

Entrez la description de l'image ici

Sélectionnez l'onglet Dépendances, puis le bouton + dans le coin inférieur gauche. Vous pouvez choisir parmi la liste suivante des options:

  • Dépendance à la bibliothèque
  • Dépendance de fichier
  • Dépendance de module

Vous pouvez ensuite entrer plus d'informations sur la dépendance que vous souhaitez ajouter à votre projet. Par exemple, si vous choisissez la dépendance à la bibliothèque, Android Studio affiche une liste de bibliothèques à choisir.

Une fois que vous avez ajouté votre dépendance, vérifiez votre fichier build.gradle au niveau du module. Il devrait avoir automatiquement mis à jour pour inclure la nouvelle dépendance.

La source


drewan50 07/01/2016.

Si vous avez besoin d'accéder aux ressources d'un projet de bibliothèque (comme vous le faites avec l'ABS), assurez-vous d'ajouter le projet / module de bibliothèque en tant que «Dépendance de module» au lieu d'une «Bibliothèque».

1 comments
1 cosimo 04/01/2014
Oui! Vous, monsieur, gagnez l'Internet! Merci! Je viens de gaspiller quelques heures de ma vie parce que je ne le savais pas.

pandabear 07/01/2016.

C'est comme ça que ça marche pour moi dans Android Studio 1.5

Dans le projet où vous souhaitez ajouter un projet de bibliothèque externe, allez dans le menu File -> New -> * Importer un nouveau module **, accédez au projet de bibliothèque que vous souhaitez ajouter à votre projet, sélectionnez pour ajouter le module "bibliothèque" dans votre projet. Vous obtiendrez settings.gradle dans vos projets, à côté de l'application, la bibliothèque inclue, quelque chose comme ceci:

include ':app', ':library' 

Ajouter dans build.gradle(Module :app) dans la section des dépendances:

Compile project(':library')

Reconstruisez le projet, et c'est tout.

* Vous pouvez ajouter autant de bibliothèques (modules) que vous le souhaitez. Dans ce cas, dans settings.gradle vous aurez:

include ':app', ':lib1', ':lib2', ... 

Et dans build.gradle, vous devrez avoir:

dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])

    // Some other dependencies...

    compile project(':lib1')
    compile project(':lib2')
    ...
} 

Adiii 07/01/2016.

Vous pouvez le faire facilement. Aller au menu File -> New -> Import Module... :

Entrez la description de l'image ici

Recherchez le répertoire qui contient le module. Cliquez sur Terminer:

Entrez la description de l'image ici

Accédez à la Project Structure et ajoutez la Module Dependency :

Entrez la description de l'image ici

Remarque: si vous recevez une erreur SDK, mettez cette dernière à jour.


Dalmas 06/27/2016.

Pour ajouter à la réponse: Si l'IDE ne présente aucune erreur, mais lorsque vous essayez de compiler, vous obtenez quelque chose comme:

No resource found that matches the given name 'Theme.Sherlock.Light' 

Votre projet de bibliothèque est probablement compilé en tant que projet d'application. Pour changer cela, passez à:

File menu -> Project structure -> Facets -> [Nom de bibliothèque] -> Vérifiez "Module de bibliothèque".


crossle 07/01/2016.
  1. Appuyez sur F4 pour afficher Project Structure , cliquez sur bibliothèques ou bibliothèques globales, et cliquez sur + pour ajouter le fichier JAR.
  2. Cliquez sur Modules sur ce que vous voulez ajouter jar, sélectionnez l'onglet Dependencies , cliquez sur + et ajoutez la bibliothèque.

Shakti Malik 07/01/2016.

L'édition de dépendances de bibliothèque via l'interface graphique n'est pas recommandée, car cela n'écrit pas ces modifications dans votre fichier build.gradle. Votre projet ne sera donc pas construit à partir de la ligne de commande. Nous devrions modifier le fichier build.gradle directement comme suit.

Par exemple, donné à la structure suivante:

Mon projet/

  • application /
  • bibliothèques /
    • lib1 /
    • lib2 /

Nous pouvons identifier trois projets. Gradle les fera référence avec les noms suivants:

  1. : application
  2. : bibliothèques: lib1
  3. : bibliothèques: lib2

Le projet de l'application est susceptible de dépendre des bibliothèques, ce qui se fait en déclarant les dépendances suivantes:

dependencies {
    compile project(':libraries:lib1')
} 
2 comments
Alexander Kulyakhtin 05/23/2013
Vraiment? Assez étrange, ils ont l'intégralité de l'interface graphique et pourtant ce n'est pas recommandé. Comment?
Shakti Malik 05/23/2013
Comme l'édition via l'interface graphique n'écrit pas ces modifications dans votre fichier build.gradle. L'édition GUI enregistre uniquement les modifications apportées aux propres données de projet d'IntelliJ. Il s'agit d'un bug au moment qui sera corrigé dans les versions futures. Vous pouvez vous référer à cette réponse de Google Android-Studio Team Lead stackoverflow.com/questions/16678447/...

Erwan 05/17/2013.

Après avoir importé le module ABS (à partir de Fichier> Structure du projet) et en vous assurant qu'il possède Android 2.2 et Support Library v4 en tant que dépendances, j'avais toujours l'erreur suivante: @Alex

Error retrieving parent for item: No resource found that matches the given name 'Theme.Sherlock.Light.DarkActionBar' 

J'ai ajouté le module nouvellement importé comme une dépendance à mon module d'application principal et cela a résolu le problème.

3 comments
christiaanderidder 05/19/2013
J'ai essayé toutes les étapes en ajoutant le module en tant que dépendance, mais j'ai encore Gradle: Error retrieving parent for item: No resource found that matches the given name 'Theme.Sherlock.Light'. . Il semble que mon projet principal ne voit pas les ressources du projet de bibliothèque (ABS). L'IDE reconnaît toutefois les références aux classes et aux ressources. Capture d'écran
Calvin Chan 06/04/2013
Pareil ici. Qui peut résoudre cela?
Dmitriy Tarasov 06/06/2013
Je migre vers IDEA 13 à partir de 12 et j'ai aussi cette erreur. Re-importer uniquement pour toutes mes dépendances aidera. Supprimez manuellement tous les modules, supprimez les fichiers * .iml associés et réimporter vos libs

azh 02/09/2014.

Pour résoudre ce problème, il vous suffit d'ajouter le chemin de ressources abs à votre fichier de construction de projet, comme ci-dessous:

sourceSets {
    main {
        res.srcDirs = ['src/main/res','../../ActionBarSherlock/actionbarsherlock/res']
    }
} 

Donc, je compile à nouveau sans aucune erreur.


Hemant 07/01/2016.

First Way Cela fonctionne pour MacBook.

Sélectionnez d'abord votre fichier builder.gradle comme écran donné:

Entrez la description de l'image ici

Ajoutez des dépendances comme sur l'écran sélectionné:

Entrez la description de l'image ici

Sélectionnez le projet de synchronisation.

Si vous obtenez une erreur comme "Projet avec chemin": signature-pad 'n'a pas pu être trouvé dans le projet': app '", utilisez la deuxième voie:

Sélectionnez le menu File -> New -> Import Module... :

Entrez la description de l'image ici

Après avoir cliqué sur Import Module ,

Entrez la description de l'image ici

donner le chemin de la bibliothèque comme mon chemin MacBook:

Entrez la description de l'image ici

Cliquez sur Finish . Maintenant, votre bibliothèque est ajoutée.


Braunster 02/09/2014.

Si vous avez Android Studio .0.4.0, vous pouvez créer un nouveau dossier dans votre chemin de construction, YourApp/libraries . Copiez le fichier JAR. Là, cliquez avec le bouton droit de la souris et "Ajouter en tant que bibliothèque". Maintenant, vous avez une fenêtre contextuelle. Sélectionnez simplement votre répertoire et appuyez sur OK, et c'est tout.


ankitbumblebee 07/01/2016.

https://www.dropbox.com/s/1e3eteu3h0pmkf7/Android%20studio%20_doc.doc?dl=0 est le lien Dropbox sur la façon d'ajouter un fichier JAR et un projet de bibliothèque dans la dernière version d'Android Studio 1.0.1.

Consultez la documentation avec des captures d'écran. C'est très simple pour un nouvel utilisateur.


passsy 05/23/2017.

J'ai trouvé la solution. C'est tellement simple. Suivez les instructions de froger_mcs .

Assurez-vous de faire du dossier src un dossier Source dans Project Structure -> Modules (Sources).

Entrez la description de l'image ici


voghDev 05/23/2017.

Un exemple d'ajout d'une autre bibliothèque (PullToRefresh) avec succès. Fonctionne également pour ABS libproject.

Cette Question SO

Ce post


Mohammad 05/23/2017.

Fondamentalement, vous pouvez inclure vos fichiers JAR de trois manières différentes. La dernière est une bibliothèque distante qui utilise le dépôt en ligne https://bintray.com/ jcenter. Mais, si vous le faites de l'une des deux autres façons, le fichier JAR sera inclus physiquement dans votre projet. Veuillez lire ce lien https://stackoverflow.com/a/35369267/5475941 pour plus d'informations. Dans cette publication, j'ai expliqué comment importer votre fichier JAR dans Android studio et j'ai expliqué toutes les façons possibles.

En résumé, si c'est comme ceci (adresse locale), ils sont téléchargés et ces fichiers JAR sont physiquement dans le projet:

entrez la description de l'image ici

Mais, s'il s'agit d'une adresse Internet comme celle-ci, ce sont des bibliothèques distantes (bintray.com jcenter part) et elles seront utilisées à distance:

entrez la description de l'image ici

J'espère que cela vous aidera.


Jinu 06/27/2016.

Ouvrez le fichier de l'application build module de gradle et ajoutez votre dépendance. Si vous téléchargez la bibliothèque, importez et construisez simplement comme gradle.

Sinon, ajoutez des référentiels dans l'application côté gradle module:

repositories {
        maven { url 'http://clinker.47deg.com/nexus/content/groups/public' }
} 

Les premiers dépôts vous permettront de télécharger la bibliothèque.

Et compilez la bibliothèque téléchargée:

compile ('com.fortysevendeg.swipelistview:swipelistview:1.0-SNAPSHOT@aar') {
        transitive = true
    } 

Si vous créez une bibliothèque, il vous suffit d'importer le projet en tant que nouveau module d'importation.


Dharmendra Pratap 06/27/2016.

Dans Android Studio, passez dans le dossier de l'application intérieure et ouvrez le fichier build.gradle. Ici, vous verrez les dépendances {}. À l'intérieur, vous pouvez ajouter le projet de la bibliothèque et la synchroniser. Maintenant, après la synchronisation de la bibliothèque, elle sera ajoutée à votre projet et vous pourrez utiliser ses fonctions et ses classes dans votre projet.


MAMASSI 07/01/2016.

Pour Android Studio:

Entrez la description de l'image ici

Cliquez sur Build.gradle (module: app) .

Et ajouter pour

dependencies {
    compile fileTree(include: ['*.jar'], dir: 'libs')
    compile files('libs/commons-io-2.4.jar')
} 

et dans votre répertoire "application", créez un répertoire, "libs". Ajoutez le fichier yourfile.jar:

Entrez la description de l'image ici

Enfin, compilez les fichiers Gradle:

Entrez la description de l'image ici

1 comments
Badre 03/23/2016
Dude respect: D

Pankaj kumar 07/01/2016.

Build.gradle simplement le projet de bibliothèque Android en tant que module et dans Build.gradle .

Appliquer le plugin: 'com.android.library'

Ensuite, procédez comme suit:

  1. Cliquez avec le bouton droit sur Module et sélectionnez Ouvrir les paramètres du module
  2. Sélectionnez les dépendances, cliquez sur + , sélectionnez les dépendances de la bibliothèque et ajoutez le module précédemment importé.

jobbert 07/01/2016.

J'ai eu une autre cause du problème, donc pour les gens:

repositories {
    mavenCentral()
} 

change mavenCentral () vers jcenter () et ajoute

allprojects {
    repositories {
        jcenter()
    }
} 

J'ai également rencontré le même problème alors j'ai suivi les choses.

  1. J'impose le projet de bibliothèque dans mon IDE AndroidStudio en tant que module à l'aide du menu File -> Importer les menus des modules

  2. Ensuite, je suis allé à mon module principal dans lequel je veux que le projet de bibliothèque soit un projet dépendant

  3. Cliquez avec le bouton droit de la souris sur le module principal (dans mon cas, son nom est une app ) -> ouvrir le paramètre du module -> passer dans l'onglet dépendances -> cliquer sur le bouton + (vous l'obtiendrez sur le côté droit de la fenêtre) -> cliquer sur la dépendance du module - > sélectionnez votre projet de bibliothèque à partir de la liste

Activez les modifications et cliquez sur le bouton OK .

Cela a fonctionné pour moi. J'espère que cela aidera les autres aussi.


monn3t 07/01/2016.

En effet, comme les versions changent, il est donc de changer l'interface utilisateur et les options disponibles dans le menu. Après avoir lu la plupart des réponses à ces questions, j'ai dû deviner ce qui fonctionnerait pour Android Studio 1.1.0 .

  1. Avec votre souris, sélectionnez le projet au niveau principal (c'est là qu'il montre le nom de votre application).

  2. Cliquez avec le bouton droit de la souris et sélectionnez les options de menu New, Folder, Assets Folder .

  3. Après avoir créé le dossier d'actifs, collez ou copiez-le, quel que soit le fichier JAR dont vous avez besoin pour votre bibliothèque.

  4. À partir du menu principal de Android Studio (en haut de l'écran), sélectionnez File -> Project Structure .

  5. Ensuite, sélectionnez le nom de votre projet et accédez à l'onglet Dependencies .

  6. Cliquez sur le signe plus ( + ) en bas à gauche de la boîte de dialogue et sélectionnez la dépendance du fichier.

  7. Enfin, ouvrez le dossier d'actifs récemment créé, sélectionnez les fichiers JAR que vous avez copiés, puis cliquez sur appliquer et sur OK .

Nettoyez et reconstruisez votre projet.

2 comments
1 Rajnish Mishra 03/23/2015
faire des copies de pots dans les actifs n'est pas une bonne idée, il augmentera inutilement la taille de l'APK
monn3t 04/12/2015
Merci pour le conseil @RajnishMishra. Je l'ai soupçonné, mais qu'est-ce que vous proposez plutôt?

HighResolutionMusic.com - Download Hi-Res Songs

1 (G)I-DLE

POP/STARS flac

(G)I-DLE. 2018. Writer: Riot Music Team;Harloe.
2 Ariana Grande

​Thank U, Next flac

Ariana Grande. 2018. Writer: Crazy Mike;Scootie;Victoria Monét;Tayla Parx;TBHits;Ariana Grande.
3 Imagine Dragons

Bad Liar flac

Imagine Dragons. 2018. Writer: Jorgen Odegard;Daniel Platzman;Ben McKee;Wayne Sermon;Aja Volkman;Dan Reynolds.
4 Clean Bandit

Baby flac

Clean Bandit. 2018. Writer: Jack Patterson;Kamille;Jason Evigan;Matthew Knott;Marina;Luis Fonsi.
5 Backstreet Boys

Chances flac

Backstreet Boys. 2018.
6 BTS

Waste It On Me flac

BTS. 2018. Writer: Steve Aoki;Jeff Halavacs;Ryan Ogren;Michael Gazzo;Nate Cyphert;Sean Foreman;RM.
7 Fitz And The Tantrums

HandClap flac

Fitz And The Tantrums. 2017. Writer: Fitz And The Tantrums;Eric Frederic;Sam Hollander.
8 BlackPink

Kiss And Make Up flac

BlackPink. 2018. Writer: Soke;Kny Factory;Billboard;Chelcee Grimes;Teddy Park;Marc Vincent;Dua Lipa.
9 Lady Gaga

I'll Never Love Again flac

Lady Gaga. 2018. Writer: Benjamin Rice;Lady Gaga.
10 Diplo

Close To Me flac

Diplo. 2018. Writer: Ellie Goulding;Savan Kotecha;Peter Svensson;Ilya;Swae Lee;Diplo.
11 Halsey

Without Me flac

Halsey. 2018. Writer: Halsey;Delacey;Louis Bell;Amy Allen;Justin Timberlake;Timbaland;Scott Storch.
12 Imagine Dragons

Machine flac

Imagine Dragons. 2018. Writer: Wayne Sermon;Daniel Platzman;Dan Reynolds;Ben McKee;Alex Da Kid.
13 Little Mix

The Cure flac

Little Mix. 2018. Writer: Pete Kelleher;Camille Purcell;Tom Barnes;Ben Kohn.
14 Bradley Cooper

Always Remember Us This Way flac

Bradley Cooper. 2018. Writer: Lady Gaga;Dave Cobb.
15 Calum Scott

No Matter What flac

Calum Scott. 2018. Writer: Toby Gad;Calum Scott.
16 Frida Sundemo

Apologize flac

Frida Sundemo. 2018.
17 Little Mix

Woman Like Me flac

Little Mix. 2018. Writer: Nicki Minaj;Steve Mac;Ed Sheeran;Jess Glynne.
18 Kelly Clarkson

Never Enough flac

Kelly Clarkson. 2018. Writer: Benj Pasek;Justin Paul.
19 Ashley Tisdale

Voices In My Head flac

Ashley Tisdale. 2018. Writer: John Feldmann;Ashley Tisdale.
20 Haley Reinhart

Something Strange flac

Haley Reinhart. 2018.

Related questions

Hot questions

Language

Popular Tags