/ Internet / Bytecode-Optimierer: Kleinere, schnellere Android-Apps dank Facebook

Bytecode-Optimierer: Kleinere, schnellere Android-Apps dank Facebook

120300-117811-i_rc.jpg
Heinrich Voigts an Dezember 1, 2016 - 3:15 am in Internet

Die Android-App von Facebook wird immer wieder für ihre schiere Größe und die damit einhergehende langsame Startzeit kritisiert. Eine Verbesserung dafür verspricht unter anderem der von Facebook selbst entwickelte Bytecode-Optimierer Redex, der Apps kleiner und schneller machen soll und nun als Open Source bereitsteht.

In der Ankündigung heißt es, dass Facebook selbst den Umfang des Bytecodes in seiner App mit Redex um 25 Prozent verringert habe. Allein dadurch starte die App auch wesentlich schneller, was aber abhängig vom Gerät ist. Im Schnitt soll die App rund 20 Prozent schneller starten als bisher, auf Mittelklasse-Geräten sei diese Rate sogar auf 30 Prozent gesteigert worden.

Einfache und bekannte Optimierungen

Das Werkzeug verändert den Bytecode von Android-Apps, der mit dem Dateiformat Dex bezeichnet wird. Dafür werden verschiedene typische Umwandlungen vorgenommen, wie das Entfernen von nicht benutztem Code, Inlining von Funktionen oder auch das Verkürzen von Strings. Entfernt werden auch einige Metadaten sowie Schnittstellen, die nur einmal aufgerufen werden. Letztere werden dann in einfache Methoden transformiert. Die Reihenfolge der Dex-Dateien wird ebenfalls angepasst, um schneller starten zu können.

Um anderen die Arbeit mit Redex zu vereinfachen, haben die Entwickler Hilfsfunktionen erstellt, die eine Apk-Datei entpacken, analysieren und nach der vorgenommenen Optimierung des Bytecodes wieder zu einer Apk-Datei zusammenpacken. Für den gesamten Arbeitsschritt reicht so lediglich der Aufruf eines einzelnen Befehls. Über eine Json-Datei kann auch Einfluss auf die einzelnen Optimierungsschritte genommen werden.

Der Code von Redex steht auf Github zur Verfügung.

Read more on: Source

Kommentare sind deaktiviert