ich ein Android App wie diese strukturiert haben:Android Abhängigkeit enthalten mehrere Male, verursacht App dex Grenze zu erreichen
Haupt-app/
dependencies {
compile project(':lib-A')
compile project(':lib-B')
}
lib-A/
dependencies {
compile 'Large3PLib'
compile 'Other-libs'
}
lib-B/
dependencies {
compile 'Large3PLib'
}
Wenn ich kompiliere Ich erreiche das Multi-Dex-Limit, und ich sehe, dass Main-App, Lib-A und Lib-B alle sehr große Dex-Zählungen haben, weil sie alle "Large3PLib" enthalten. Gibt es eine Möglichkeit, dass ich die Möglichkeit habe, "Large3PLib" nur einmal einzuschließen, um meine Dex-Anzahl zu verringern?
Anmerkungen:
- Ich habe proguard
- aktiviert habe ich versucht, den Code in Haupt-app, lib-A und lib-B in ein großes Modul kombiniert. Das bringt mich wieder unter das Multidex-Limit, aber ich mag diese Lösung nicht, da mein Code jetzt nicht mehr organisiert ist.
Danke, eine Frage aber folgen: Einer meiner Bibliotheken nutzt Ressourcen (Strings, Themen, etc.) von ‚Large3PLib‘. Wenn ich von "kompilieren" zu "bereitgestellt" umschalte, kann es die Ressourcen nicht finden. Enthält "bereitgestellt" keine Ressourcen? – Chris
enthält es beim Bauen, aber nicht beim Packen, also wird nichts, was von Large3PLib kommt, hinzugefügt. Deshalb müssen Sie es erneut auf der Root-Ebene hinzufügen. –