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 ausgelagert[2].

DEODEXED[Bearbeiten]

Der Begriff DEODEXED "verneint" ODEXED, 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 (modden). 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 wenn man einen Fehler beim modden eines ODEXED-Rom's macht, ist meist ein Bootloop zu erwarten, der sich nur durch Wiederherstellung der Änderungen entfernen lässt. Dies ist meist nur durch ein vorher erstelltes NANDROID-Backup möglich. Schwieriger ist das Wiederherstellen über die ADB, sofern die Verbindung im Bootloop möglich ist. Dabei müsste man wissen, was man alles geändert hat und mittels Kommandozeile wiederherstellen.

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/