Wie kann ein Android-Bibliotheksmodul in eine andere Bibliothek eingebunden werden?

8

Ich baue eine Android-Bibliothek, die als aar verpackt und an Entwickler von Drittanbietern verteilt wird.

Die Struktur ist ziemlich einfach:

Projekt --- BibliothekA --- BibliothekB

libraryA erfordert libraryB, weshalb dies in seiner Gradle-Datei enthalten ist:

%Vor%

Und settings.gradle hat

%Vor%

Aber wenn ich das Projekt als aar erstelle, schließt es nur libraryA ein. Was vermisse ich?

Ich habe die Antworten dazu gelesen: Android Studio So verpacken Sie einzelne AAR aus mehreren Bibliotheksprojekten?

Ist das immer noch nicht möglich? Ich würde annehmen, dass die Aufspaltung Ihres Codes in mehrere Module keine schlechte Übung ist?

    
Philipp E. 15.12.2014, 14:41
quelle

2 Antworten

3

Sie können das hier veröffentlichte Skript fat-aar.gradle versuchen: Ссылка

    
Vladimir Ryhlitskiy 28.10.2015, 07:44
quelle
7
  

Ist das immer noch nicht möglich?

Richtig, zumindest durch die Standard-Build-Tools. Es ist möglich, dass es Plugins, Skripte oder andere Rezepte von Drittanbietern gibt, um aus einem AAR und seinen Abhängigkeiten einen "fetten AAR" zu erstellen.

  

Ich würde annehmen, dass die Aufspaltung Ihres Codes in mehrere Module keine schlechte Übung ist?

Mehrere Module sind für die lokale Entwicklung völlig in Ordnung. Module sind jedoch Abhängigkeiten. Wenn Sie eine Bibliothek versenden, müssen Sie alle Abhängigkeiten erfüllen, die alle Ihre Module enthalten. Das bedeutet wiederum, dass alle Module, auf die Ihre Bibliothek angewiesen ist, auch Bibliotheken sein müssen, die so verteilt sind, dass ein Benutzer Ihrer Top-Level-Bibliothek diese Abhängigkeiten erreichen kann.

    
CommonsWare 15.12.2014 14:51
quelle