Odex and Deodex are two popular words amongAndroid users, especially developers and those who waste their time flashing ROMs and trying to modify Android firmware.
In this article, we are going to share with you what is Odex, Deodex and what implication it brings to an Android user. Also, you are going to learn how to check if the ROM is Odexed or Deodexed.
What is Odex
Every Android application comes in a package with a .apk extension. These files contain certain .odex files. Odex files are meant to save space. They are collections of parts of an application and optimized before booting the phone.
ODex files also speed up the boot process. They are difficult to hack because a part of their code is already extracted to another location before execution.
What is Deodex
A Deodexed file is a repacked odex file. They are reassembled into classes.dex. All parts of an application are put together in one place. This way it eliminates the worry that these modified apk files conflict with separate odexed parts.
Deodexed ROMs have their application packages but putting them all together in one place allows easy modification such as theming. Because no pieces of code is coming from any external location, all the ROMs are Deodexed to ensure integrity.
How do this work?
Android operation systems use a Java-based virtual machine for running applications. It’s called Dalvik Virtual Machine. A .dex file or deodexed file contains the cache used by this virtual machine, for a specific application and it’s stored inside the apk file.
On the other hand, a .odex file is an optimized version of the same .dex file that is stored next to the apk. When Android is booting up, the Dalvik cache for the Dalvik virtual machine is built using these .ode files. It allows the operating system to learn in advance what applications will load. In this way it speeds up the booting process.
By deodexing the apk files, a developer actually puts the .odex files back int their respective apk packages. Since all code is now contained within the apk itself, it becomes possible to modify any application package without conflicting with with the operating system’s execution environment.
How to check if ROM is Odexed or Deodexed
To check is your current ROM is odexed or deodexed you simply have to see the .apkand.odex files. If the ROM is deodexed you will not see any .odexfile in the app directory.
To check for this files you have to use a File Manager with root access. A good one is ES File Explorer but also you may take a look to Total Commander file manager.If you have any other question feel free to ask us in the comment sections below. We will be happy to assist you
If you have any other question feel free to ask us in the comment sections below. We will be happy to assist you with anything