Hvordan tilføjer jeg et biblioteksprojekt til Android Studio?

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

Hvordan tilføjer jeg et biblioteksprojekt (f.eks. Sherlock ABS) til Android Studio ?

(Ikke til den gamle ADT Eclipse-baserede pakke, men til det nye Android Studio .)

4 Comments
25 Daniel Smith 05/21/2013
ja det var jo mere forvirrende end det burde have været ... ikke som om det var bedre i formørkelse.
3 user1785900 01/19/2014
YouTube-videoen How to Add Libraries to Android Studio forklarer processen.
1 craned 10/16/2014
Hvis du bruger Gradle , kan du se dette StackOverflow-svar .
1 Simon 12/20/2014
Her er en video, som jeg fandt rigtig nyttig: youtube.com/watch?v=1MyBO9z7ojk

29 Answers


froger_mcs 05/23/2017.

Update for Android Studio 1.0

Siden Android Studio 1.0 blev udgivet (og mange versioner mellem v1.0 og en af ​​de første fra tidspunktet for mit tidligere svar), har nogle ting ændret sig.

Min beskrivelse er fokuseret på at tilføje eksternt biblioteksprojekt for hånd via Gradle-filer (for bedre at forstå processen). Hvis du vil tilføje et bibliotek via Android Studio Creator, skal du blot kontrollere svaret nedenfor med visuel vejledning (der er nogle forskelle mellem Android Studio 1.0 og dem fra skærmbilleder, men processen er meget ens).

Før du begynder at tilføje et bibliotek til dit projekt for hånd, overvej at tilføje den eksterne afhængighed. Det vil ikke rod i din projektstruktur. Næsten alle de velkendte Android-biblioteker er tilgængelige i et Maven- depot, og dets installation tager kun en linje kode i app/build.gradle filen:

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

Adding the library

Her er den fulde proces med at tilføje eksternt Android-bibliotek til vores projekt:

  1. Opret et nyt projekt via Android Studio Creator. Jeg hedder det HelloWorld .
  2. Her er den oprindelige projektstruktur oprettet af 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. Opret ny mappe: /libs i rodmappen ( HelloWorld/ ), hvor vi placerer vores eksterne biblioteker (dette trin er ikke nødvendigt - kun for at holde en renere projektstruktur).
  2. Indsæt dit bibliotek i den nyoprettede /libs mappe. I dette eksempel brugte jeg PagerSlidingTabStrip bibliotek (bare download ZIP fra GitHub, omdøbe bibliotekskatalog til "PagerSlidingTabStrip" og kopiere det). Her er den nye struktur af vores projekt:
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. Rediger settings.gradle ved at tilføje dit bibliotek til at include . Hvis du bruger en brugerdefineret sti som jeg gjorde, skal du også definere projektmappen for vores bibliotek. En hel settings.gradle skal ligne nedenfor:

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

5.1 Hvis du står over for "Default Configuration" -fejl, så prøv dette i stedet for trin 5,

include ':app'
    include ':libs:PagerSlidingTabStrip' 
  1. I app/build.gradle tilføj vores biblioteksprojekt som en afhængighed:

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

6.1. Hvis du fulgte trin 5.1, skal du følge dette i stedet for 6,

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

        compile project(":libs:PagerSlidingTabStrip")
    } 
  1. Hvis dit biblioteksprojekt ikke har build.gradle fil, skal du oprette det manuelt. Her er et eksempel på den fil:

    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. Derudover kan du oprette en global konfiguration til dit projekt, som vil indeholde SDK versioner og bygge værktøjer version for hvert modul for at holde konsistens. Bare rediger gradle.properties fil og tilføj linjer:

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

    Nu kan du bruge det i dine build.gradle filer (i app og biblioteks moduler) som nedenfor:

    //...
    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. Det er alt. Bare klik på, synkroniser projektet med Gradle 'ikonet synkroniseres med Gradle . Dit bibliotek skal være tilgængeligt i dit projekt.

Google I / O 2013 - Det nye Android SDK Build System er en fantastisk præsentation om at opbygge Android-apps med Gradle Build System: Som Xavier Ducrohet sagde:

Android Studio handler om redigering og fejlfinding og profilering. Det handler ikke om at bygge mere.

I starten kan det være lidt forvirrende (især for dem, der arbejder med Eclipse og aldrig har set myren som mig;)), men i slutningen giver Gradle os nogle gode muligheder, og det er værd at lære dette byggesystem.

5 comments
6 victor n. 05/24/2013
hej der, du forklarede perfekt det virkelige problem. stemmer op med dit svar, så andre kan se det. en mindre ting, der ikke fungerede på min side, refererer til supportbiblioteket i afhængighedsbyggets build.gradle. som det viser sig: 'Project / libs ...' fungerede ikke af en eller anden grund. jeg var nødt til at gøre væk med projektidentifikationen. så 'libs / ...'. og det kompilerede fint. en note er, at disse to måder at henvise til stier eller projekter er forvirrende på. Jeg håber, at en enkel og samlet ordning kommer op i fremtiden. der er ingen grund til, at den oprindelige løsning ikke ville fungere.
9 Akbar ibrahim 05/24/2013
1. Kæmpede med dette i lang tid. Som victor n sagde, refererer hovedprojektets støttebur fra actionbarsherlock-modul ikke. Jeg var nødt til at gøre følgende for at få det til at fungere ... (1) Fjern compile filer ('libs / android-support-v4.jar') fra projektets build.gradle. Hovedmodulet bør kun have kompilere projekt (": biblioteker: actionbarsherlock") . (2) Tilføj kompilere filer ('libs / android-support-v4.jar') i stedet for at kompilere filer (': HelloWorld / libs / android-support-v4.jar') i actionbarsherlock's build.gradle.
8 alicanbatur 11/07/2013
Hvorfor har jeg ikke "Importmodul" -afsnittet, på den mulighed, hvor du leder os? Jeg bruger Android Studio 0.3.1
5 amalBit 02/08/2014
Alternativet Importmodul mangler !!
147 Kyle Gobel 10/19/2014
Hvorfor er det så gud forvirrende ?!

Sam Rad 07/01/2016.

Her er den visuelle vejledning:

Update til Android Studio 0.8.2:

I Android Studio 0.8.2 skal du gå til Project Structure -> under Modules bare trykke på plusknappen og vælge Import Existing Project og importere actionbarsherlock . Synkroniser derefter dine Gradle-filer.

Hvis du står over for fejlen

Fejl: SDK Build Tools-revisionen (xx.xx) er for lav. Mindstekrav er yy.yy

skal du bare åbne filen build.gradle i actionbarsherlock mappen og opdatere buildToolsVersion til den foreslåede.

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

Android Studio 0.8.2


Menu File -> Project Structure... :

Først

Module -> Import Module

Anden

Når du har importeret biblioteksmodulet, skal your vælge your projektmodul og tilføje afhængigheden:

Tredje

Og vælg derefter det imported module :

Forth

5 comments
29 amalBit 02/08/2014
Indsætningsmodul er ikke tilgængelig i Android Studio4.3
3 toobsco42 08/25/2014
Nøglen for mig at gøre dette arbejde og løse pakken, der ikke fandt fejl, var trinnet Select your project module and add dependency dependencies { // ... compile project(':library') }
6 Rémy DAVID 10/06/2014
Dette vil kopiere biblioteksmodulet i dit projekt, hvilket ikke er det, du vil have, hvis du vil have en fælles kodebase delt mellem flere projekter
CCJ 11/13/2015
@amalBit er ... er du fra fremtiden? Men alvorligt, de har brug for at gøre dette simpelt, som om det var i Eclipse ADT; hvem vil slå en tredjeparts repo og kompilere (eventuelt) vilkårlig kode til hver build? Det undergraver alvorligt QA og kodefryseprotokoller
amalBit 11/17/2015
Det var langt tilbage i beta-dage med Android Studio 0.4.3. Hvad angår tiltrædelse 3. parts repo, id siger, undgå at bruge +. Angiv bare den version, du ønsker. Hvis du stadig ikke kan stole på det nok, kan du oprette en krukke (eller klon) af en repo og bruge den.

Blackbelt 07/01/2016.

Brug menuen File -> Project Structure -> Modules .

Jeg begyndte at bruge det i dag. Det er lidt anderledes.

For Sherlock, vil du måske slette deres junit.jar eller tilføje junit.jar filen til klassepaden.

For at importere biblioteket ved hjælp af grad, kan du tilføje det til afsnittet dependencies i din build.gradle (modulets ene).

F.eks

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 ændrer sig.

Der findes en sektion med navnet "Åbn modulindstillinger", hvis du højreklikker på en modulmappe i projektafsnittet i Android Studio (jeg bruger version 0.2.10).

5 comments
1 Alexander Kulyakhtin 05/16/2013
Hmm det siger stadig android-apt-compiler: styles.xml: 5: error: Fejl ved hentning af forælder til element: Ingen ressource fundet, der matcher det givne navn 'Theme.Sherlock.Light.DarkActionBar'.
Blackbelt 05/16/2013
Under Sherlock-modulet -> afhængigheder har jeg android 4.2.2 og supportbiblioteket v4
Blackbelt 05/16/2013
@ ρяσѕρєяK ud for run-knappen, er der en etiket med Android. Hvis du klikker der, finder du Rediger konfiguration. Tryk og under Target Device klik på "Show Chooser Dialg"
7 fish 05/16/2013
Hej, jeg har det samme problem som Alex ("Gradle: Fejl henter forælder til emne: Ingen ressource fundet, der matcher det givne navn 'Theme.Sherlock.Light'.") - Java afhængigheden synes at være løst korrekt, fordi IDE gør ikke skyld i min SherlockActivity, men Gradle synes af en eller anden grund ikke at se på ABS's ressourcer. Nogle ideer?
4 Konrad Morawski 09/15/2013
På Android Studio 0.2.8 er der ingen Modules i vinduet Project Structure .

Jonathan Lin 10/14/2013.

Jeg ville overveje afhængigheder, Android-biblioteker og Multi-project setup nødvendig læsning. Tag venligst et par minutter til at gøre det.

Især i tilfælde af et bibliotek uden projekter, læs følgende uddrag fra ovenstående kilde:

Gradle projekter kan også afhænge af andre gradle projekter ved hjælp af en multi-projekt opsætning. Et multi-projekt opsætning fungerer normalt ved at have alle projekterne som undermapper af et givet rodprojekt.

F.eks. Givet til følgende struktur:

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

Vi kan identificere 3 projekter. Gradle vil henvise dem med følgende navn:

:app
:libraries:lib1
:libraries:lib2 

Hvert projekt vil have sin egen build.gradle, der erklærer, hvordan det bliver bygget. Derudover vil der være en fil, der hedder settings.gradle ved roten, der erklærer projekterne. Dette giver følgende struktur:

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

Indholdet af settings.gradle er meget enkelt:

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

Dette definerer hvilken mappe der faktisk er et Gradle-projekt.

App-projektet vil sandsynligvis afhænge af bibliotekerne, og dette gøres ved at erklære følgende afhængigheder:

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

Vær venlig at bemærke, at der var ringe eller ingen brug af Android Studio GUI for at få dette til at ske.

Jeg bruger i øjeblikket git submodules til at linke det indlejrede bibliotek til den faktiske bibliotek git repo for at undgå et afhængigheds rod.

4 comments
Jonathan Lin 10/14/2013
Venligst opvote, hvis du fandt dette nyttigt, så andre kan undgå smerten og bevæge sig hurtigere.
RichieHH 03/24/2014
Meget hjælpsom og vigtigere, ikke spille til gui luner af dagen.
1 dcunited001 04/20/2014
Mange tak for at inkludere det eneste svar, der giver mening. hvert andet svar er forældet og virker bare ikke. Jeg prøvede ikke engang i CS på Virginia Tech, fordi de første to år lærte at fckn klikke rundt i formørkelse. det gjorde ikke noget fornuftigt, men at se det gradle resultat af tilfældige klik i et IDE gør.
velis 06/01/2015
Tak for git submodules tip. Jeg brugte forbindelsen før, men har nu skiftet til SVN externals. Fungerer som en charme.

René Michel 07/01/2016.

Jeg har netop fundet en nemmere måde (i stedet for at skrive direkte ind i .gradle-filerne).

Dette er til Android Studio 1.1.0.

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

    Import eksisterende projekt

    Klik på "Import eksisterende projekt".

  2. Vælg det ønskede bibliotek og det ønskede modul.

  3. Klik på finish. Android Studio importerer biblioteket til dit projekt. Det vil synkronisere gradvise filer.

  4. Tilføj det importerede modul til dit projekts afhængigheder.

    Højreklik på appmappen -> Åbn modulindstillinger -> Gå til fanen afhængigheder -> Klik på '+' knappen -> klik på Modulafhængighed.

    Biblioteksmodulet bliver derefter tilføjet til projektets afhængigheder.

    Tilføj biblioteksmodul

  5. ???

  6. Profit


Vilen 07/01/2016.

Den nemmeste måde jeg fandt ud af ekstern biblioteksprojekt er (for eksempel at inkludere et Facebook-bibliotek, der er gemt en mappe op i afhængighedsmappen):

  1. I indstillinger.gradle tilføj

    include ':facebook'
    
    project(':facebook').projectDir = new File(settingsDir, '../dependencies/FacebookSDK') 
  2. I build.gradle afhængigheder sektion, tilføj

    compile project ('facebook') 

Alt, hvad du skal gøre, er at synkronisere projektet med gradvise filer.

4 comments
Rajnish Mishra 03/23/2015
Hej Vilen Hvad er indstillingerDer her
Vilen 04/02/2015
Hej Rajnish. Fra dokumentation: settingsDir Returnerer indstillingsmappen for bygningen. Indstillingsmappen er den mappe, der indeholder indstillingsfilen. Returnerer: Indstillingsmappen. Returnerer aldrig null.
Rajnish Mishra 04/03/2015
De to prikker før / afhængigheder er vigtigere at passe på. Dit svar hjælper mig meget. Tak
Solata 11/18/2015
NOTE: for strengevaluering i gradle skal du bruge dobbelt quote ("). Dette" gem dagen "for mig. Hænger sammen med dette

Eugene Bosikov 07/01/2016.

En enkel måde at tilføje en JAR-fil til som et bibliotek til dit Android Studio-projekt:

a) Kopier dine * .jar filer

b) Indsæt i libs biblioteket under dine projekter:

Indtast billedbeskrivelse her

c) Tilføj til build.gradle:

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

b) Hvis dit projekt fra eksempel com.example.MYProject og biblioteker com.example.ScanAPI har samme navneområde com.example , vil Android Studio kontrollere din build og oprette alle nødvendige ændringer i dit projekt. Derefter kan du gennemgå disse indstillinger i menuen File -> Project Structure .

c) Hvis dit projekt og biblioteker har et andet navneområde, skal du højreklikke på biblioteket og vælge indstillingen "Tilføj som bibliotek" og vælg den type, du har brug for.

Husk, at "Projektstrukturen" ikke gør nogen autoændringer i "build.gradle" i den aktuelle version af Android Studio (0.2.3). Måske vil denne funktion være tilgængelig i de næste versioner.


pathe.kiran 06/27/2016.

Mulighed 1: Slet filer til projektets libs / directory

Den relevante build.gradle-fil opdateres derefter automatisk.

Mulighed 2: Rediger build.gradle Fil manuelt

Åbn din build.gradle-fil og tilføj en ny build-regel til afhængigheden af ​​lukning. Hvis du f.eks. Vil tilføje Google Play Services, vil dit projekts afhængighedsafsnit se sådan ud:

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

Mulighed 3: Brug Android Studio's brugergrænseflade

I projektpanelet, Control + klik på det modul, du vil tilføje afhængigheden til, og vælg Åbn modulindstillinger.

Indtast billedbeskrivelse her

Vælg fanen Afhængigheder, efterfulgt af knappen + i nederste venstre hjørne. Du kan vælge mellem følgende liste over muligheder:

  • Bibliotek afhængighed
  • Filafhængighed
  • Modulsafhængighed

Du kan derefter indtaste flere oplysninger om afhængigheden, du vil tilføje til dit projekt. Hvis du f.eks. Vælger Library Dependency, viser Android Studio en liste over biblioteker, som du kan vælge imellem.

Når du har tilføjet din afhængighed, skal du tjekke din build.gradle-fil på modulniveau. Den skulle automatisk have opdateret til at omfatte den nye afhængighed.

Kilde


drewan50 07/01/2016.

Hvis du har brug for adgang til ressourcerne i et biblioteksprojekt (som du gør med ABS), skal du sørge for at tilføje biblioteksprojekt / modul som en "modulafhængighed" i stedet for et "bibliotek".

1 comments
1 cosimo 04/01/2014
Ja! Du herre vinder internettet! Tak! Jeg har lige spildt et par timer i mit liv, fordi jeg ikke vidste det.

pandabear 07/01/2016.

Sådan fungerer det for mig i Android Studio 1.5

I projektet, hvor du vil tilføje eksternt biblioteksprojekt, skal du gå til menuen File -> New -> * Importer nyt modul **, navigere til det biblioteksprojekt, du vil tilføje til dit projekt, vælg for at tilføje 'bibliotek' modul i dit projekt. Du vil få settings.gradle i dine projekter, ved siden af ​​app, inkluderet bibliotek, noget som dette:

include ':app', ':library' 

Tilføj i build.gradle(Module :app) i afsnittet Afhængigheder:

Compile project(':library')

Genopbygge projektet, og det er det.

* Du kan tilføje så mange biblioteker (moduler) som du vil have. I så fald i settings.gradle vil du have:

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

Og i build.gradle skal du have:

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

    // Some other dependencies...

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

Adiii 07/01/2016.

Det kan du nemt gøre. Gå til menuen File -> New -> Import Module... :

Indtast billedbeskrivelse her

Søg efter den mappe, der indeholder modulet. Klik på Udfør:

Indtast billedbeskrivelse her

Gå til Project Structure og tilføj Module Dependency :

Indtast billedbeskrivelse her

Bemærk: Hvis du modtager en SDK-fejl, skal du opdatere den.


Dalmas 06/27/2016.

For at tilføje til svaret: Hvis IDE ikke viser nogen fejl, men når du forsøger at kompilere, får du noget som:

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

Dit biblioteksprojekt er sandsynligvis udarbejdet som et ansøgningsprojekt. For at ændre dette, skal du gå til:

Menu File -> Project structure -> Facets -> [Biblioteknavn] -> Kontroller "Biblioteksmodul".


crossle 07/01/2016.
  1. Tryk på F4 for at vise Project Structure , klik på biblioteker eller Globale biblioteker, og klik på + for at tilføje JAR-filen.
  2. Klik på Moduler, hvad du ønsker at tilføje krukke, vælg fanen Dependencies , klik på + , og tilføj bibliotek.

Shakti Malik 07/01/2016.

Redigering af biblioteksafhængigheder via GUI'en er ikke tilrådelig, da der ikke skrives disse ændringer til din build.gradle-fil. Så dit projekt vil ikke bygge på kommandolinjen. Vi skal redigere filen build.gradle direkte som følger.

F.eks. Givet til følgende struktur:

myproject /

  • app /
  • biblioteker /
    • lib1 /
    • Lib2 /

Vi kan identificere tre projekter. Gradle vil henvise dem med følgende navne:

  1. : app
  2. : Biblioteker: lib1
  3. : Biblioteker: Lib2

App-projektet vil sandsynligvis afhænge af bibliotekerne, og dette gøres ved at erklære følgende afhængigheder:

dependencies {
    compile project(':libraries:lib1')
} 
2 comments
Alexander Kulyakhtin 05/23/2013
Virkelig? Mærkeligt, de har hele GUI'en, og alligevel er det ikke tilrådeligt. Hvordan det?
Shakti Malik 05/23/2013
Som redigering gennem GUI skriver ikke disse ændringer til din build.gradle-fil. GUI-redigering sparer kun ændringer i IntelliJs egne projektdata. Dette er en fejl i øjeblikket, som vil blive rettet i fremtidige udgivelser. Du kan henvise til dette svar fra Google Android-Studio Team Lead stackoverflow.com/questions/16678447/...

Erwan 05/17/2013.

Efter at have importeret ABS-modulet (fra fil> projektstruktur) og sørg for at det har Android 2.2 og Support Library v4 som afhængigheder, fik jeg stadig følgende fejl, som du @Alex

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

Jeg tilføjede det nyindførte modul som en afhængighed af mit hovedappmodul, og det fik problemet.

3 comments
christiaanderidder 05/19/2013
Jeg forsøgte alle trin inklusing tilføjer modulet som en afhængighed, men jeg har stadig Gradle: Error retrieving parent for item: No resource found that matches the given name 'Theme.Sherlock.Light'. . Det ser ud til, at mit hovedprojekt ikke ser ressourcerne i biblioteksprojektet (ABS). IDE genkender dog referencerne til klasser og ressourcer. screenshot
Calvin Chan 06/04/2013
Samme her. Hvem kan løse dette?
Dmitriy Tarasov 06/06/2013
Jeg migrerer til IDEA 13 fra 12 og har denne fejl også. Kun reimport for alle mine afhængigheder vil hjælpe. Fjern manuelt alle moduler, fjern relaterede * .iml-filer og genindfør dine libs

azh 02/09/2014.

For at løse dette problem behøver du blot at tilføje abs ressourcestien til din projektbyggede fil, ligesom nedenfor:

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

Så jeg kompilerer igen uden fejl.


Hemant 07/01/2016.

First Way Dette virker for MacBook.

Vælg først din builder.gradle-fil som vist skærmbillede:

Indtast billedbeskrivelse her

Tilføj afhængigheder som på den valgte skærm:

Indtast billedbeskrivelse her

Vælg synkroniseringsprojekt.

Hvis du får en fejl som "Projekt med sti": Signatur-pad 'ikke kunne findes i projekt': app '", så brug venligst den anden vej:

Vælg menuen File -> New -> Import Module... :

Indtast billedbeskrivelse her

Når du har klikket på Import Module ,

Indtast billedbeskrivelse her

giv bibliotekets vej som i min MacBook-sti:

Indtast billedbeskrivelse her

Klik på Finish . Nu er dit bibliotek tilføjet.


Braunster 02/09/2014.

Hvis du har Android Studio .0.4.0, kan du oprette en ny mappe i din build path, YourApp/libraries . Kopier JAR-filen. Der i, højreklik på den og "Tilføj som bibliotek". Nu har du en popup. Vælg bare din mappe, og tryk på OK, og det er det.


ankitbumblebee 07/01/2016.

https://www.dropbox.com/s/1e3eteu3h0pmkf7/Android%20studio%20_doc.doc?dl=0 er Dropbox-linket for, hvordan du tilføjer et JAR-fil og biblioteksprojekt i den nyeste version af Android Studio 1.0.1.

Se dokumentationen med skærmbilleder. Det er meget nemt for en ny bruger.


passsy 05/23/2017.

Jeg fandt løsningen. Det er så simpelt. Følg Froger_Mcs instruktioner .

Sørg for at gøre src-mappen til en kildemappe i projektstruktur -> moduler (kilder).

Indtast billedbeskrivelse her


voghDev 05/23/2017.

Et eksempel på at tilføje et andet bibliotek (PullToRefresh). Fungerer også for ABS libproject.

Denne SØ Spørgsmål

Dette indlæg


Mohammad 05/23/2017.

Dybest set kan du medtage dine JAR-filer på tre forskellige måder. Den sidste er fjernbibliotek, der bruger https://bintray.com/ jcenter online repository. Men hvis du gør det på en af ​​de to andre måder, vil JAR-filen blive inkluderet fysisk i dit projekt. Læs venligst dette link https://stackoverflow.com/a/35369267/5475941 for mere information. I dette indlæg forklarede jeg, hvordan du importerede din JAR-fil i Android-studiet, og jeg forklarede alle mulige måder.

Sammenfattende, hvis det er sådan her (lokal adresse), downloades de, og disse JAR-filer er fysisk i projektet:

Indtast billedbeskrivelse her

Men hvis det er en internetadresse som denne, er de fjernbiblioteker (bintray.com jcenter del), og de bliver brugt fjernt:

Indtast billedbeskrivelse her

Jeg håber det hjælper.


Jinu 06/27/2016.

Åbn applikationsfilen til bygningsgradmodulet og tilføj din afhængighed. Hvis du downloader biblioteket, skal du blot importere og bygge som grad.

Ellers tilføj repositorier i side gradele modul app:

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

De første repositorier vil downloade biblioteket for dig.

Og kompilér det downloadede bibliotek:

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

Hvis du opretter et bibliotek, skal du bare importere projektet som import nyt modul.


Dharmendra Pratap 06/27/2016.

I Android Studio skal du gå ind i app-mappen og åbne build.gradle-filen. Her vil du se afhængigheder {}. Inde i det kan du tilføje biblioteksprojektet og synkronisere. Nu efter synkronisering af biblioteket bliver det tilføjet til dit projekt, og du kan bruge sine funktioner og klasser i dit projekt.


MAMASSI 07/01/2016.

Til Android Studio:

Indtast billedbeskrivelse her

Klik på Build.gradle (module: app) .

Og tilføj til

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

og i din mappe "app" opretter du en mappe, "libs". Tilføj filen yourfile.jar:

Indtast billedbeskrivelse her

Endelig kompilér Gradle Files:

Indtast billedbeskrivelse her

1 comments
Badre 03/23/2016
Dommer respekt: ​​D

Pankaj kumar 07/01/2016.

Du skal blot importere Android-biblioteksprojektet som et modul og i Build.gradle .

Anvend plugin: 'com.android.library'

Herefter skal du følge disse trin:

  1. Højreklik på Modul & vælg åbne modulindstillinger
  2. Vælg afhængigheder, klik på + , vælg bibliotekets afhængigheder og tilføj det tidligere importerede modul.

jobbert 07/01/2016.

Jeg havde en anden årsag til problemet, så for folk:

repositories {
    mavenCentral()
} 

skift mavenCentral () til jcenter () og tilføj

allprojects {
    repositories {
        jcenter()
    }
} 

Jeg stødte også på det samme problem, så jeg fulgte ting.

  1. Jeg importerer biblioteksprojektet i min AndroidStudio IDE som et modul ved hjælp af menuen File -> Importer modulmenuer

  2. Så gik jeg til mit hovedmodul, hvor jeg ønsker biblioteksprojektet som et afhængigt projekt

  3. Højreklik på hovedmodulet (i mit tilfælde dets navn er app ) -> Åbn modulindstilling -> Gå til fanebladet afhængigheder -> klik på + knappen (du får det på højre side af vinduet) -> klik på modulafhængighed - > vælg dit biblioteksprojekt fra listen

Anvend ændringerne, og klik på OK- knappen.

Det fungerede for mig. Jeg håber det vil hjælpe andre også.


monn3t 07/01/2016.

Faktisk, da versionerne ændrer sig, ændres også brugergrænsefladen og mulighederne i menuen. Efter at have læst de fleste af svarene på disse spørgsmål måtte jeg gætte, hvad der ville fungere for Android Studio 1.1.0 .

  1. Med musen skal du vælge projektet på hovedniveau (det er her, hvor navnet på din app vises).

  2. Højreklik, og vælg menupunkterne New, Folder, Assets Folder .

  3. Efter at have oprettet aktivitetsmappen, skal du indsætte eller kopiere i den, uanset JAR-fil, du har brug for til dit bibliotek.

  4. Fra Android Studio's hovedmenu (øverst på skærmen) skal du vælge File -> Project Structure .

  5. Vælg derefter dit projektnavn og gå til fanen Dependencies .

  6. Klik på plustegnet ( + ) nederst til venstre i dialogboksen og vælg filafhængighed.

  7. Åbn endelig den nyligt oprettede aktivitetsmappe, vælg de JAR-filer, du kopierede, og klik derefter på Apply og OK .

Rengør og genopbyg dit projekt.

2 comments
1 Rajnish Mishra 03/23/2015
at lave kopier af krukker i aktiver er ikke en god ide, det vil unødigt øge apk størrelse
monn3t 04/12/2015
Tak for råd @RajnishMishra. Jeg formodede det, men hvad foreslår du i stedet?

Related questions

Hot questions

Language

Popular Tags