2016-04-28 5 views
0

Ich benutze eine Bibliothek (https://github.com/PhilJay/MPAndroidChart) zum Plotten von Daten in einer Android-App. Wenn app-release.apk vom Programm erstellt wird, kann es auf dem Tablet, das ich zum Testen verwende, installiert werden.Android Studio - Wie folgt ein Bibliotheksprojekt in einer App mit der App-Release.apk

Was mir rätselhaft ist, ist, wie die Teile der Bibliothek, die ich benutze, mit dem Release folgen. In anderen Szenarios, z. B. in Visual Studio und C# - Programmen, die auf einem Windows-Rechner installiert werden, benötigen Bibliotheken die Installation und Registrierung von DLL-Dateien auf jedem Zielrechner. In meinem Szenario ist die Bibliothek speziell für Android geschrieben, aber wenn ich es irgendwie schaffen würde, eine C++ - oder aC# -Bibliothek in meine Android-App mit Tools wie libstdC++ oder MONO einzubinden, würde es genauso funktionieren, wenn es um app-release geht. apk?

Sind alle Klassen in einer Bibliothek in der App-release.apk enthalten oder nur die Teile, die ich verwende?

Vielen Dank im Voraus und bitte lassen Sie mich wissen, wenn die Frage unklar ist, bevor Sie es downvoting!

Antwort

1

Normalerweise, wenn Sie Ihre APK erstellen, sind alle Bibliotheken, die Sie importiert haben (Jars), enthalten und werden in dex-Dateien umgewandelt, wie der Rest Ihres Codes. Also, ja alle Klassen sind enthalten, auch wenn Sie sie nicht verwenden. Sie können Proguard verwenden, um sie aus dem APK zu entfernen. Sieh dir diesen Beitrag an: Use Proguard for stripping unused Support lib classes

+0

Also, wenn ich dich richtig verstehe, wird die Größe der APK mindestens die Größe der enthaltenen JAR-Dateien sein. – NoobPointerException

+0

Nicht nur, es gibt auch die Ressourcen und die Dateien in Ihrem Asset-Ordner –

+0

Ich werde die Antwort akzeptieren, sobald ich eine Bestätigung von einer anderen Quelle bekomme. Vielen Dank! – NoobPointerException