DEODEXED

Aus Android Wiki

Der Begriff ODEXED kommt von der Dateierweiterung .odex, ".dex" steht für "Dalvik Executable Format", das "o" für "optimized"[1]. Mit ODEXED bzw. DEODEXED bezeichnet man den Aufbau des Androidframeworks und einiger Systemapps. Ein ODEXED, bzw. DEODEXED Aufbau ist nur bei der Verwendung der Dalvik VM als Runtime Engine möglich und vorhanden. Bei der Verwendung der Android Runtime (ART) werden Klassen und weitere Daten, die bei der Dalvik VM im .dex ausgelagert sind, in OAT Dateien gespeichert[2].

DEODEXED[Bearbeiten]

Der Begriff DEODEXED "verneint" ODEXED (Präfix "de"), was bedeutet, dass das Gegenteil von einer ODEX-Dateistruktur zutrifft. Das Framework und die Apps sind dabei in den jeweiligen Dateien integriert, es werden keine Teile der Anwendung oder des Frameworks ausgelagert.

Vorteile[Bearbeiten]

DEODEXED-Rom's sind im Gegensatz zu ODEXED-Rom's einfacher anzupassen. Style-Dateien werden einfach in den passenden Ordner verschoben. Das Deinstallieren von Systemapps geht einfach über das Löschen der APK-Datei.

Nachteile[Bearbeiten]

Im Gegensatz zur einfachen Möglichkeit das Rom zu verändern, muss bei jedem Start die App vom System vollständig entpackt werden und bremst damit den Start des Smartphones aus. Zudem ist der Start der App selbst auch verlangsamt.

ODEXED[Bearbeiten]

Bei einer ODEXED Dateistruktur ist der Rom-Aufbau optimiert. Die Programmbibliotheken und weitere Teile einer App sind in *.odex-Dateien ausgelagert und nicht, wie die APK-Dateien, komprimiert.

Vorteile[Bearbeiten]

Die Vorteile eines ODEXED-Rom's liegen darin, dass das System beim Starten beschleunigt wird, da das System die Programmbibliotheken schneller verarbeiten kann. Dies wird dadurch erreicht, das die Programmbibliotheken direkt geladen werden können, ohne dass diese vorher entpackt werden müssen. Im Anschluss muss dann nur noch die übrig gebliebene, deutlich verkleinerte APK-Datei entpackt werden.

Nachteile[Bearbeiten]

Dadurch, dass die Programmbibliotheken in *.odex-Dateien ausgelagert sind, ist es sehr schwierig diesen Aufbau des Rom's zu verändern ("modifizieren", dt.: verändern, anpassen). Beim Entfernen von Systemapps muss beachtet werden, das zu den APK-Dateien auch die .odex-Dateien gelöscht werden müssen und umgekehrt. Beachtet man dies nicht, startet das Rom aufgrund eines Fehlers meist nicht.

Ein weiterer schwerer Nachteil ist, das ein sogenannter Bootloop zu erwarten ist, sollten Fehler beim Verändern der System-Dateien auftreten. Dieser ist meist nur durch einen die Wiederherstellung der Systemdateien zu beheben, wodurch mindestens alle persöhnlcihen Daten verloren gehen. Schwieriger ist das Wiederherstellen über die ADB, sofern die Verbindung im Bootloop möglich ist. Dabei müssten alle Änderungen über die Kommandozeile rückängig gemacht werden.

Einzelnachweise[Bearbeiten]

  1. http://www.android-hilfe.de/android-allgemein/332552-info-bedeutet-odex-deodex.html
  2. http://www.xda-developers.com/android/new-runtime-compiler-in-android-4-4/