Ich möchte eine AAR-Datei für meine Bibliothek in Android Studio erstellen. Ich hätte eine JAR-Option gewählt, aber meine Bibliothek verfügt über Ressourcen.
Irgendeine Idee, wie man eine aar-Datei aus einer Bibliothek erstellt?
android
android-studio
jar
aar
AndroidEnthusiast
quelle
quelle
aar
ichBuild > Rebuild Project
in Android Studio eine erstellen musste , um meine zu generieren . Das einfache Ausführen, Debuggen oder Erstellen von APK hat dasaar
für mich nicht generiert ../gradlew moduleName:assembleRelease
in der Terminal-RegisterkarteRufen Sie die exportierte .aar-Datei aus lokalen Builds ab
Wenn Sie ein Modul als Android-Bibliotheksprojekt definiert haben, erhalten Sie .aar-Dateien für alle Build-Varianten (standardmäßig debuggen und freigeben) im
build/outputs/aar/
Verzeichnis dieses Projekts.Wenn diese Dateien nicht vorhanden sind, starten Sie einen Build mit
für macOS Benutzer
Details zum Bibliotheksprojekt
Ein Bibliotheksprojekt enthält eine
build.gradle
Datei mitapply plugin: com.android.library
. Als Referenz für diese als.aar
Datei verpackte Bibliothek müssen Sie einige Eigenschaften wie Paket und Version definieren.Beispieldatei
build.gradle
für die Bibliothek (dieses Beispiel enthält die Verschleierung in der Version):Referenz .aar-Datei in Ihrem Projekt
In Ihrem App-Projekt können Sie diese
.aar
Datei imlibs
Ordner ablegen und diebuild.gradle
Datei aktualisieren , um anhand des folgenden Beispiels auf diese Bibliothek zu verweisen:Alternative Optionen zum Verweisen auf lokale Abhängigkeitsdateien in gradle finden Sie unter: http://kevinpelgrims.com/blog/2014/05/18/reference-a-local-aar-in-your-android-project
Abhängigkeiten mit maven teilen
Wenn Sie diese
.aar
Dateien in Ihrer Organisation freigeben müssen, überprüfen Sie maven. Eine nette Zusammenfassung zu diesem Thema finden Sie unter: https://web.archive.org/web/20141002122437/http://blog.glassdiary.com/post/67134169807/how-to-share-android-archive- Bibliothek-aar-acrossInformationen zum .aar-Dateiformat
Eine aar-Datei ist nur eine
.zip
mit einer alternativen Erweiterung und einem bestimmten Inhalt. Weitere Informationen zum AAR-Format finden Sie unter diesem Link .quelle
gradlew assemble
- das löste das Problem, das ich hatte.gradlew
ist ein Skript im obersten Projektverzeichnis .Genau wie der Benutzer hcpl sagte, aber wenn Sie sich keine Gedanken über die Version der Bibliothek machen möchten, können Sie dies tun:
Es ist ärgerlich, die Version jedes Mal aktualisieren zu müssen. Auf diese Weise wird es auch einfacher, sich keine Gedanken über den Namensraum zu machen.
quelle
Nachdem wir den ersten und zweiten Schritt befolgt hatten, die in der Antwort von hcpl im selben Thread erwähnt wurden , fügten wir '* .aar'], dir: 'libs' in unser-android-app-Projekt-basiert-auf-gradle / app / hinzu build.gradle-Datei wie unten gezeigt:
Unsere Gradle-Version ist com.android.tools.build:gradle:3.2.1
quelle
AAR erstellen
Befolgen Sie beim Erstellen die folgenden Schritte.
File->New->New Module->Android Library and create
.AAR generieren
Gehen Sie zu Gradle im oberen rechten Bereich in Android Studio und folgen Sie den nachstehenden Schritten.
Gradle->Drop down library name -> tasks-> build-> assemble or assemble release
AAR wird in build / output / aar / generiert
Wenn wir jedoch möchten, dass AAR in einem bestimmten Ordner im Projektverzeichnis mit dem gewünschten Namen generiert wird, ändern Sie Ihre App-Ebene
build.gradle
wie untenJetzt wird ein Ordner mit dem Namen "release" im Projektverzeichnis erstellt, der AAR haben wird.
quelle
Übrigens hat @aar keine transitive Abhängigkeit. Zum Aktivieren benötigen Sie einen Parameter: Transitive Abhängigkeiten, die für eine Bibliothek mit Gradle nicht aufgelöst wurden
quelle