So fügen Sie ein externes AAR-Paket mit dem neuen Gradle Android Build System manuell ein


406

Ich habe mit dem neuen Android-Build-System experimentiert und bin auf ein kleines Problem gestoßen. Ich habe mein eigenes aar-Paket von ActionBarSherlock zusammengestellt, das ich 'actionbarsherlock.aar' genannt habe. Was ich versuche, ist, dieses aar tatsächlich zu verwenden, um meine endgültige APK zu erstellen. Wenn ich die gesamte ActionBarSherlock-Bibliothek als Android-Bibliotheksmodul mit Kompilierungsprojekt (': actionbarsherlock') in mein Hauptprojekt einbinde, kann ich problemlos erfolgreich erstellen.

Mein Problem ist jedoch, dass ich diese Abhängigkeit MANUELL als aar-Dateipaket bereitstellen möchte, nur wenn ich eine JAR verwenden würde, kann ich anscheinend nicht herausfinden, wie ich sie richtig in mein Projekt aufnehmen kann. Ich habe versucht, die Kompilierungskonfiguration zu verwenden, aber dies scheint nicht zu funktionieren. Ich bekomme beim Kompilieren immer wieder kein Symbol, das mir sagt, dass die classes.jar aus dem aar-Paket nicht in den Klassenpfad aufgenommen wird.

Kennt jemand die Syntax, um ein aar-Paket manuell als Datei einzuschließen?

build.gradle

buildscript {

 repositories {
     mavenCentral()
  }
  dependencies {
    classpath 'com.android.tools.build:gradle:0.4'
  }
}
apply plugin: 'android'

repositories {
   mavenCentral()
}
dependencies {
    compile files('libs/actionbarsherlock.aar')
}

android {
    compileSdkVersion 15
    buildToolsVersion "17.0"
}

BEARBEITEN: Die Antwort lautet also, dass es derzeit nicht unterstützt wird. Hier ist das Problem, wenn Sie es verfolgen möchten.

EDIT: Da dies derzeit noch nicht direkt unterstützt wird, scheint die beste Alternative die vorgeschlagene Lösung von @RanWakshlak zu sein

BEARBEITEN: Auch einfacher mit der von @VipulShah vorgeschlagenen Syntax


Betrachten Sie die Antwort von Vipul Shah: Ab Android Studio 0.5.8 funktionierte es schließlich für mich ohne lokales Maven-Repository.
Shkschneider


Wenn Sie Gradle 3.0.0 oder höher verwenden, hat dieses einfache Gradle-Setup für mich funktioniert
user1506104

Antworten:


670

Befolgen Sie die folgenden Schritte, um es zum Laufen zu bringen (ich habe es bis Android Studio 2.2 getestet).

Nehmen wir an, Sie haben eine AAR-Datei im libs-Ordner gespeichert. (Angenommen, der Dateiname ist cards.aar)

Geben Sie dann in der App build.gradleFolgendes an und klicken Sie auf Projekt mit Gradle-Dateien synchronisieren. Öffnen Sie build.gradle auf Projektebene und fügen Sie es flatDir{dirs 'libs'}wie unten beschrieben hinzu

allprojects {
   repositories {
      jcenter()
      flatDir {
        dirs 'libs'
      }
   }
}

Öffnen Sie jetzt die Datei build.grdle auf App-Ebene und fügen Sie die .aarDatei hinzu

    dependencies {
       compile(name:'cards', ext:'aar')
}

Wenn alles gut geht, werden Sie sehen, dass der Bibliothekseintrag in build -> exploded-aar erfolgt

Beachten Sie außerdem, dass Sie beim Importieren einer .aar-Datei aus einem anderen Projekt mit Abhängigkeiten diese ebenfalls in Ihr build.gradle aufnehmen müssen.


5
@VipulShah wo befindet sich das libs-Verzeichnis?
StuStirling

2
Möglicherweise sollte empfohlen werden, Änderungen im App-Modul 'build.gradle' und nicht im obersten Ordner 'build.gradle' vorzunehmen.
Loloof64

3
Antwort auf meine Frage oben gefunden: anstelle der compileAbhängigkeit zwei Abhängigkeiten hinzufügen debugCompile(name:'cards-debug', ext:'aar')undreleaseCompile(name:'cards-release', ext:'aar')
Iftah

2
Verwechseln Sie nicht den Beispielcode. Der erste Block mit allprojects {...}geht zur Gradle-Datei auf der Ebene "Projekt", und der zweite Teil mit dependencies {...}sollte zur Gradle-Datei auf der Ebene "App" gehen.
Kirill Karmazin

8
Bitte aktualisieren Sie Ihre Antwort: WARNUNG: Die Konfiguration 'Kompilieren' ist veraltet und wurde durch 'Implementierung' und 'API' ersetzt. Es wird Ende 2018 entfernt. Weitere Informationen finden Sie unter: d.android.com/r/tools/update-dependency-configurations.html
B-GangsteR

248
  1. Klicken Sie mit der rechten Maustaste auf Ihr Projekt und wählen Sie "Moduleinstellungen öffnen" .

Öffnen Sie die Moduleinstellungen

  1. Klicken Sie auf die Schaltfläche "+" in der oberen linken Ecke des Fensters, um ein neues Modul hinzuzufügen.

Neues Modul hinzufügen

  1. Wählen Sie ".JAR- oder .AAR-Paket importieren" und klicken Sie auf die Schaltfläche "Weiter" .

AAR importieren

  1. Suchen Sie die AAR-Datei mithilfe der Auslassungsschaltfläche "..." neben dem Feld "Dateiname".

Suchen Sie nach einer AAR-Datei

  1. Lassen Sie das Modul der App ausgewählt und klicken Sie auf den Bereich Abhängigkeiten , um das neue Modul als Abhängigkeit hinzuzufügen.

Bereich "Abhängigkeiten"

  1. Verwenden Sie die Schaltfläche "+" des Abhängigkeitsbildschirms und wählen Sie "Modulabhängigkeit" .

Modulabhängigkeit hinzufügen

  1. Wählen Sie das Modul aus und klicken Sie auf "OK" .

Modul auswählen


4
Beste Antwort: Denken Sie daran, dass Sie das Alt+BProjekt anschließend sauber machen und neu erstellen. Android Studio, warum Sie schmerzhaft sind! Ich möchte NetBeans IDE als Android Developer Platform haben
Java Acm

@Oliver Du bist großartig!
Ankit Purwar

Du bist der beste!
Codezombie

2
Es ist nicht die beste Idee, jedes Mal ein neues Modul zu erstellen, wenn Sie aarIhrem Projekt nur eine Bibliothek hinzufügen möchten
Kirill Karmazin

Du bist großartig, mein Freund. !! Prost auf diese.
Timothy Macharia

112

Sie können auf eine aar-Datei aus einem Repository verweisen. Ein Maven ist eine Option, aber es gibt eine einfachere Lösung: Legen Sie die aar-Datei in Ihrem libs-Verzeichnis ab und fügen Sie ein Verzeichnis-Repository hinzu.

    repositories {
      mavenCentral()
      flatDir {
        dirs 'libs'
      }
    }

Verweisen Sie dann auf die Bibliothek im Abschnitt "Abhängigkeit":

  dependencies {
        implementation 'com.actionbarsherlock:actionbarsherlock:4.4.0@aar'
}

Weitere Informationen finden Sie im Min'an-Blogbeitrag .


1
Dies funktioniert hervorragend und ist besser als die akzeptierten / höher bewerteten Antworten, da es einfacher ist und ich dies in die Versionskontrolle einbeziehen kann, ohne die Datei zum lokalen Maven-Repo jedes Entwicklers hinzuzufügen (wenn ich das tun müsste, warum sollte ich Gradle überhaupt verwenden? ?) Vielen Dank!
Ajpolt

@ajpolt Es wird wahrscheinlich empfohlen, stattdessen einen Repo-Server einzurichten (für proprietäre Deps), damit Sie ihn nicht auf Entwicklungsmaschinen oder im lib-Ordner Ihres Projekts ablegen müssen. Wenn Sie nur eine Abhängigkeit haben, werfen Sie sie in ein maven-strukturiertes Google-Code-Repository (als temporäres Repo)
Lo-Tan

4
Der wichtigste Punkt in dieser Antwort ist die Erwähnung von '@aar' am Ende der Abhängigkeit.
Atharva

Ich nehme an, dass dies mit dem neuesten Gradle-Plugin nicht mehr funktioniert: stackoverflow.com/questions/60878599/…
David

Dies ist die einzige Antwort, die die einfachste Form mit allen modernen Syntaxen implementationusw. enthält. Dies ist das Kopieren und Einfügen der Lösung. Viele neue Upvotes gehen ein, weil das Android Build Gradle Plugin 4.0.0 jetzt einen Fehler auslöst, anstatt fehlerhafte .aar-Pfade zu ignorieren
Patrick

51

Der folgende Ansatz funktioniert mit dem neuesten Android Studio (> v0.8.x):

  • Speichern Sie die aarDatei unter App - Moduls libsOrdner (zB: <project>/<app>/libs/myaar.aar)

  • Fügen Sie das Folgende zu build.gradle Ihres Modulordners "app" hinzu (nicht zu Ihrem Projektstamm build.gradle). Beachten Sie den Namen in der Kompilierungszeile, es ist myaar @ aar, nicht myaar.aar.

    dependencies {
        compile 'package.name.of.your.aar:myaar@aar'
    }
    
    repositories{
        flatDir{
            dirs 'libs'
        }
    }
  • Klicken Tools -> Android -> Sync Project with Gradle Files


3
Funktioniert perfekt auf AS 1.0
Pablo Johnson

1
Falls jemand es braucht, wenn gradle in Ordnung ist, Sie aber immer noch keine Klassen sehen können, starten Sie Android Studio neu ...
htafoya

1
Diese Lösung funktioniert hervorragend in AS2.2 - gradle ist erstaunlich wählerisch in Bezug auf die Syntax von AAR-Dateien, wie es scheint.
Jim Andreas

Bitte aktualisieren oder löschen, das Kompilieren ist veraltet und es gibt auch dieses Problem: stackoverflow.com/questions/60878599/…
David

49

vor (Standard)

implementation fileTree(include: ['*.jar'], dir: 'libs')

einfach '*.aar'in includeArray hinzufügen .

implementation fileTree(include: ['*.jar', '*.aar'], dir: 'libs')

es funktioniert gut unter Android Studio 3.x.

Wenn Sie eine Bibliothek ignorieren möchten? mag das.

implementation fileTree(include: ['*.jar', '*.aar'], exclude: 'test_aar*', dir: 'libs')
debugImplementation files('libs/test_aar-debug.aar')
releaseImplementation files('libs/test_aar-release.aar')

2
Während dieser Code die Frage möglicherweise beantwortet, würde die Bereitstellung eines zusätzlichen Kontexts darüber, wie und / oder warum das Problem gelöst wird, den langfristigen Wert der Antwort verbessern.
Alexander

1
Dies funktioniert einwandfrei, wenn die Bibliothek einfach ist. Hier ist jedoch ein Problem: Sie müssen die gesamte in Ihre aar-Datei importierte Bibliothek importieren, damit sie funktioniert. Der Import aus der aar-Datei wird mit dieser Methode nicht weitergegeben.
Tobliug

Oder noch einfacher:implementation fileTree(include: ['*.?ar'], dir: 'libs')
friederbluemle

@friederbluemle Anstatt einfacher, würde ich theoretisch kürzer und gleichzeitig unspezifisch sagen.
David

21

Ich habe es gerade geschafft!

  1. Kopieren Sie die Datei mylib-0.1.aar in den Ordner libs /

  2. Fügen Sie diese Zeilen am Ende von build.gradle hinzu (sollte App sein, kein Projekt):

    repositories {
       flatDir {
           dirs 'libs'
       }
    }
    dependencies {
        compile 'com.example.lib:mylib:0.1@aar'
    }
  3. So weit, ist es gut. Hier kommt der wichtigste Punkt:

Gradle muss für Abhängigkeiten auf das Netzwerk zugreifen, es sei denn, der Offline-Modus ist aktiviert.

Stellen Sie sicher, dass Sie die Offline-Arbeit über das Kontrollkästchen in Projektstrukturen / Gradle aktiviert haben

-- ODER --

Konfigurieren Sie die Proxy-Einstellungen, um auf das Netzwerk zuzugreifen.

Um die Proxy-Einstellungen zu konfigurieren, müssen Sie die Datei gradle.properties des Projekts ändern und http und https wie folgt separat konfigurieren:

systemProp.http.proxyHost=proxy.example.com
systemProp.http.proxyPort=8080
systemProp.http.proxyUser=user
systemProp.http.proxyPassword=pass
systemProp.http.nonProxyHosts=localhost
systemProp.http.auth.ntlm.domain=example <for NT auth>

systemProp.https.proxyHost=proxy.example.com
systemProp.https.proxyPort=8080
systemProp.https.proxyUser=user
systemProp.https.proxyPassword=pass
systemProp.https.nonProxyHosts=localhost
systemProp.https.auth.ntlm.domain=example <for NT auth>

Hoffe das funktioniert.


Bitte aktualisieren oder löschen, das Kompilieren ist veraltet und es gibt auch dieses Problem: stackoverflow.com/questions/60878599/…
David

20

Derzeit wird das Verweisen auf eine lokale .aar-Datei nicht unterstützt (wie von Xavier Ducrochet bestätigt).

Stattdessen können Sie ein lokales Maven-Repository einrichten (viel einfacher als es sich anhört) und von dort aus auf die .aar-Datei verweisen.

Ich habe einen Blogpost geschrieben, in dem beschrieben wird, wie es hier funktioniert:

http://www.flexlabs.org/2013/06/using-local-aar-android-library-packages-in-gradle-builds


Ich habe es nicht geschafft, dass es funktioniert, wenn das Artefakt ein Schnappschuss ist. Irgendeine Idee warum?
Tbruyelle

Haben Sie dies nur mit Eclipse oder Android Studio zum Laufen gebracht? Bei Eclipse fügt "gradle eclipse" die aar-Datei zum Klassenpfad hinzu, aber Eclipse erkennt keine Klassen darin.
andrej_k

Überprüfen Sie diese Frage stackoverflow.com/questions/20911665/…, wenn nach dem Befolgen des Tutorials Ihre lokale .aar-Datei nicht gefunden wird (auf Gradle 1.9 oder höher)
Maragues

Bitte aktualisieren oder löschen, diese Antwort ist veraltet.
David

19

Sie können aarmit nur wenigen Codezeilen mehrere Abhängigkeiten hinzufügen .

Lokales flatDirRepository hinzufügen:

repositories {
    flatDir {
        dirs 'libs'
    }
} 

In jeden aarin libsVerzeichnis compileAbhängigkeit Konfiguration:

fileTree(dir: 'libs', include: '**/*.aar')
        .each { File file ->
    dependencies.add("compile", [name: file.name.lastIndexOf('.').with { it != -1 ? file.name[0..<it] : file.name }, ext: 'aar'])
}

Dies hat funktioniert, aber wie kann man überprüfen, ob die Abhängigkeit bereits als Maven-Abhängigkeit hinzugefügt wurde, dann möchte ich nicht, dass eine AAR-Datei hinzugefügt werden muss. PS: Ich verwende dies, um ein Plugin zu schreiben, das mein AAR automatisch zum Android-Projekt hinzufügt und fügt Abhängigkeit in build.gradle
Adi

@Adi Wenn Sie bereits eine Maven-Abhängigkeit haben, legen Sie keinen entsprechenden aar in den libsOrdner.
Mixel

Vielen Dank für die Antwort. Wie bereits erwähnt, wird das Hinzufügen von aar zu libs durch ein Android Studio-Plugin automatisiert, das sich in der Entwicklung befindet. Daher möchte ich wissen, ob die Abhängigkeit, die das Plugin der build.gradle-Datei hinzufügt, bereits zuvor hinzugefügt wurde.
Adi

Ich habe momentan keine Antwort. Ich denke, es ist besser, eine separate Frage zu erstellen.
Mixel

15

Leider hat keine der Lösungen hier für mich funktioniert (ich bekomme ungelöste Abhängigkeiten). Was letztendlich funktioniert hat und meiner Meinung nach der einfachste Weg ist: Markieren Sie den Projektnamen in Android Studio und dann Datei -> Neues Modul -> JAR- oder AAR-Paket importieren. Gutschrift geht an die Lösung in diesem Beitrag


1
Es sollte beachtet werden, dass Android Studio in seinem Importassistenten außergewöhnlich vage ist. Wenn sie in einem der Schritte "Dateiname" angeben, fragen sie tatsächlich nach dem Pfad der Datei ... Hoffentlich erspart diese Nachricht anderen Kopfschmerzen.
Tukajo

13

Es gibt zwei Möglichkeiten:

Der erste Weg

  1. Öffnen Sie Ihr Android Studio und navigieren Sie zum Create New ModuleFenster vonFile -> New -> New Module

Geben Sie hier die Bildbeschreibung ein

  1. Wählen Sie das Import .JAR/.AAR PackageElement aus und klicken Sie auf die NextSchaltfläche

  2. Fügen Sie der build.gradleDatei, die zu Ihrem appModul gehört, eine Abhängigkeit hinzu .

    dependencies {
        ...
        implementation project(path: ':your aar lib name')
    }

Das ist alles.

Der zweite Weg

  1. Erstellen Sie einen Ordner im libsVerzeichnis, z aars.

  2. Legen Sie Ihre aar lib in den aars-Ordner.

  3. Fügen Sie das Code-Snippet hinzu

repositories {
    flatDir {
        dirs 'libs/aars'
    }
}

in Ihre build.gradleDatei gehört zum App-Modul.

  1. Fügen Sie der build.gradleDatei, die zu Ihrem appModul gehört, eine Abhängigkeit hinzu .
dependencies {
    ...
    implementation (name:'your aar lib name', ext:'aar')
}

Das ist alles.

Wenn Sie Chinesisch lesen können, können Sie den Blog AR 是 AAR 文件 以及 如何 在 Android 开发 中 使用 überprüfen


Diese Antwort war wirklich hilfreich für mich
Csabi

Wenn auf die erste Weise befolgt wird, werden Klassen in einer AAR-Datei im Hauptprojekt nicht erkannt. Müssen wir eine zusätzliche Konfiguration hinzufügen?
Kiran

Bitte aktualisieren oder löschen, die Antworten sind bereits veröffentlicht und das zweite "Kompilieren" ist veraltet.
David

12

Mit Android Studio 3.4 und Gradle 5 können Sie dies einfach so tun

dependencies {
    implementation files('libs/actionbarsherlock.aar')
}

1
Dies ist die beste Antwort. Die Abhängigkeit ist explizit und sehr einfach.
Nikmoon

1
Einverstanden, dass dies die beste Antwort ist. Sofort funktioniert, war perfekt zum Hinzufügen von .aar-Abhängigkeiten zu einer React Native-Bibliothek.
Josh Baker

1
Dies löst einen Fehler aus, der mit Gradle Plugin 4 beginnt
David

@ David Danke für den Bericht, ich werde versuchen, ihn so schnell wie möglich zu testen.
m0skit0

10

UPDATE ANDROID STUDIO 3.4

  1. Gehen Sie zu Datei -> Projektstruktur

Geben Sie hier die Bildbeschreibung ein

  1. Module und klicken Sie auf +

Geben Sie hier die Bildbeschreibung ein

  1. Wählen Sie .aar-Paket importieren

Geben Sie hier die Bildbeschreibung ein

  1. Finden Sie die .aar-Route

Geben Sie hier die Bildbeschreibung ein

  1. Fertig stellen und Übernehmen , dann überprüfen, ob das Paket hinzugefügt wurde

Geben Sie hier die Bildbeschreibung ein

  1. Klicken Sie nun im App-Modul auf + und Modulabhängigkeit

Geben Sie hier die Bildbeschreibung ein

  1. Überprüfen Sie das Bibliothekspaket und Ok

Geben Sie hier die Bildbeschreibung ein

  1. Überprüfen Sie die hinzugefügte Abhängigkeit

Geben Sie hier die Bildbeschreibung ein

  1. Und die Projektstruktur so

Geben Sie hier die Bildbeschreibung ein


1
Dies ist die 17. Antwort, die ich gelesen habe und die endlich die Abhängigkeit hinzugefügt hat. eeh
Taras Matsyk

6

Ich habe auch dieses Problem gehabt. Dieser Problembericht : https://code.google.com/p/android/issues/detail?id=55863 scheint darauf hinzudeuten, dass ein direkter Verweis auf die .AAR-Datei nicht unterstützt wird.

Möglicherweise besteht die Alternative vorerst darin, die Actionbarsherlock-Bibliothek als Gradle-Bibliothek im übergeordneten Verzeichnis Ihres Projekts zu definieren und entsprechend zu referenzieren.

Die Syntax wird hier definiert: http://tools.android.com/tech-docs/new-build-system/user-guide#TOC-Referencing-a-Library


Vielen Dank für den Hinweis auf das Problem. Ja, ich weiß, wie dies mit Gradle Android Library funktioniert, aber diese Option ist für das Projekt, an dem ich arbeite, nicht wirklich optimal, aber danke!
Miguel Lavigne

3

Ich habe diese Problemumgehung im Android Issue Tracker gefunden: https://code.google.com/p/android/issues/detail?id=55863#c21

Der Trick (kein Fix) besteht darin, Ihre .aar-Dateien in einem Teilprojekt zu isolieren und Ihre Bibliotheken als Artefakte hinzuzufügen:

configurations.create("default")
artifacts.add("default", file('somelib.jar'))
artifacts.add("default", file('someaar.aar'))

Weitere Informationen: Umgang mit transitiven Abhängigkeiten für lokale Artefakte


Das ist richtig, und hier ist das Beispiel: in github.com/textileio/notes/commit/… , compile project(':mobile')in android / app / build.gradle, configurations.maybeCreate("default")in android / mobile / build.gradle, include ':mobile'in android / settings.gradle
Li Zheng

3

In meinem Fall habe ich einige Abhängigkeiten in meiner Bibliothek, und als ich eine aardaraus erstellte, bin ich aufgrund fehlender Abhängigkeiten fehlgeschlagen. Daher besteht meine Lösung darin, alle Abhängigkeiten aus meiner Bibliothek mit einer arrDatei hinzuzufügen .

Meine Projektebene build.gradlesieht also so aus:

buildscript {
    repositories {
        mavenCentral()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:2.1.2'
    }
}

allprojects {
    repositories {
        mavenCentral()
        //add it to be able to add depency to aar-files from libs folder in build.gradle(yoursAppModule)
        flatDir {
            dirs 'libs'
        }
    }
}

task clean(type: Delete) {
    delete rootProject.buildDir
}

build.gradle(modile app) damit:

apply plugin: 'com.android.application'

android {
    compileSdkVersion 23
    buildToolsVersion "23.0.3"

    defaultConfig {
        applicationId "com.example.sampleapp"
        minSdkVersion 15
        targetSdkVersion 23
        versionCode 1
        versionName "1.0"
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
}

dependencies {
    //your project depencies
    ...
    //add lib via aar-depency
    compile(name: 'aarLibFileNameHere', ext: 'aar')
    //add all its internal depencies, as arr don't have it
    ...
}

und Bibliothek build.gradle:

apply plugin: 'com.android.library'

android {
    compileSdkVersion 23
    buildToolsVersion "23.0.3"

    defaultConfig {
        minSdkVersion 15
        targetSdkVersion 23
        versionCode 1
        versionName "1.0"
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
}

dependencies {
    compile fileTree(include: ['*.jar'], dir: 'libs')
    //here goes library projects dependencies, which you must include
    //in yours build.gradle(modile app) too
    ...
}

3

Ich habe hier alle Lösungen ausprobiert, aber keine funktioniert. Dann habe ich .aarfestgestellt, dass ich einen Fehler gemacht habe. Ich habe den Ordner in den falschen Ordner gelegt, wie Sie unten sehen können. Ich dachte, ich sollte ihn in den Stammordner legen, also habe ich dort einen libsOrdner erstellt (1 im Bild) ), aber im App-Ordner gibt es bereits einen libs, den Sie an zweiter Stelle setzen libssollten. Hoffen Sie , dass dies denjenigen hilft, die das gleiche Problem wie ich haben :

Geben Sie hier die Bildbeschreibung ein


3

Die Standardmethode zum Importieren von AAR-Dateien in eine Anwendung finden Sie unter https://developer.android.com/studio/projects/android-library.html#AddDependency

Klicken Sie auf Datei> Neu> Neues Modul. Klicken Sie auf .JAR / .AAR-Paket importieren und dann auf Weiter. Geben Sie den Speicherort der kompilierten AAR- oder JAR-Datei ein und klicken Sie auf Fertig stellen.

Bitte beziehen Sie sich auf den obigen Link für die nächsten Schritte.


2

Nur um die Antwort zu vereinfachen

Wenn die .aar-Datei lokal vorhanden ist, schließen Sie sie
compile project(':project_directory')in die Abhängigkeiten von build.gradle Ihres Projekts ein.

Wenn eine Remote-Datei auf Remote vorhanden ist, schließen Sie sie compile 'com.*********.sdk:project_directory:0.0.1@aar'in die Abhängigkeiten von build.gradle Ihres Projekts ein.


0

In meinem Fall arbeiten Sie einfach, wenn ich "Projekt" zum Kompilieren hinzufüge:

repositories {
    mavenCentral()
    flatDir {
        dirs 'libs'
    }
}


dependencies {
   compile project('com.x.x:x:1.0.0')
}

0

Sie können so etwas tun:

  1. Legen Sie Ihre lokalen Bibliotheken (mit der Erweiterung: .jar, .aar, ...) in den Ordner 'libs' (oder in einen anderen, wenn Sie möchten).

  2. Fügen Sie in build.gradle (App-Ebene) diese Zeile zu Abhängigkeiten hinzu

    ImplementierungsdateiTree (include: ['* .jar', '* .aar'], dir: 'libs')

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.