Chciałbym utworzyć plik aar dla mojej biblioteki w Android Studio, wybrałbym opcję jar, ale moja biblioteka ma zasoby.
Masz pomysł, jak utworzyć plik aar z biblioteki?
android
android-studio
jar
aar
AndroidEnthusiast
źródło
źródło
aar
, musiałem zrobićBuild > Rebuild Project
w Android Studio. Po prostu uruchomienie, debugowanie lub utworzenie pliku APK nie wygenerowałoaar
dla mnie pliku../gradlew moduleName:assembleRelease
na karcie terminalaPobierz wyeksportowany plik .aar z lokalnych kompilacji
Jeśli masz moduł zdefiniowany jako projekt biblioteki systemu Android, otrzymasz pliki .aar dla wszystkich wersji kompilacji (domyślnie debugowanie i wydanie) w
build/outputs/aar/
katalogu tego projektu.Jeśli te pliki nie istnieją, rozpocznij kompilację z rozszerzeniem
dla użytkowników macOS
Szczegóły projektu biblioteki
Projekt biblioteki zawiera
build.gradle
plik zawierającyapply plugin: com.android.library
. Aby uzyskać informacje o tej bibliotece spakowanej jako.aar
plik, musisz zdefiniować niektóre właściwości, takie jak pakiet i wersja.Przykładowy
build.gradle
plik biblioteki (ten przykład obejmuje zaciemnianie w wersji):Odwołaj się do pliku .aar w swoim projekcie
W projekcie aplikacji możesz upuścić ten
.aar
plik wlibs
folderze i zaktualizowaćbuild.gradle
plik, aby odwoływał się do tej biblioteki, korzystając z poniższego przykładu:Alternatywne opcje odwoływania się do lokalnych plików zależności w gradle można znaleźć pod adresem : http://kevinpelgrims.com/blog/2014/05/18/reference-a-local-aar-in-your-android-project
Udostępnianie zależności za pomocą maven
Jeśli chcesz udostępnić te
.aar
pliki w swojej organizacji, odwiedź stronę Maven. Miły opis na ten temat można znaleźć pod adresem : https://web.archive.org/web/20141002122437/http://blog.glassdiary.com/post/67134169807/how-to-share-android-archive- biblioteka-aar-w poprzekInformacje o formacie plików .aar
Plik aar to po prostu plik
.zip
z alternatywnym rozszerzeniem i określoną zawartością. Aby uzyskać szczegółowe informacje, sprawdź to łącze dotyczące formatu aar .źródło
gradlew assemble
- to rozwiązało problem, który miałem.gradlew
to skrypt w katalogu najwyższego poziomu projektu .tak jak powiedział użytkownik hcpl, ale jeśli nie chcesz się martwić o wersję biblioteki, możesz to zrobić:
to trochę irytujące, że trzeba aktualizować wersję za każdym razem. W ten sposób ułatwia to również nie martwienie się o przestrzeń nazw.
źródło
Po wykonaniu pierwszego i drugiego kroku wymienionego w odpowiedzi hcpl w tym samym wątku , dodaliśmy „* .aar”], dir: „libs” w naszym projekcie-android-app-project-on-gradle / app / build.gradle, jak pokazano poniżej:
Nasza wersja gradle to com.android.tools.build:gradle:3.2.1
źródło
Aby utworzyć AAR
podczas tworzenia wykonaj poniższe kroki.
File->New->New Module->Android Library and create
.Aby wygenerować AAR
Przejdź do gradle w prawym górnym okienku w Android Studio, wykonaj poniższe kroki.
Gradle->Drop down library name -> tasks-> build-> assemble or assemble release
AAR zostanie wygenerowany w build / output / aar /
Ale jeśli chcemy, aby AAR był generowany w określonym folderze w katalogu projektu o żądanej nazwie, zmodyfikuj poziom aplikacji,
build.gradle
jak poniżejTeraz utworzy folder o nazwie „release” w katalogu projektu, który będzie miał AAR.
źródło
btw @aar nie ma zależności przechodnich. potrzebujesz parametru, aby go włączyć: Zależności przechodnie nie zostały rozwiązane dla biblioteki aar przy użyciu gradle
źródło