[Galaxy Note GT-N7000 Themes and Apps] majdinj:
De-Odexer and Odexer Tool

​

To odex app or deodex app? That is the question..!!​

Well, depending on whom you ask, each option is preferable to the other. In reality, both have their own unique pros and cons. While a Deodexed ROM will undoubtedly be much more receptive to customization, an Odexed ROM may feel a little snappier under certain circumstances.

​

Odex files

Advantages:

Speed up loading as odex is uncompressed and already optimized

Saves space as no need to put optimized dex in Dalvik-cache (already have the ODEX file in /system/framework or /system/app)

Disadvantages:

Can not make modifications to apks or jars

Can not be themed

Can not change BOOTCLASSPATH if system libraries are affected

Deodex files

Advantages:

Can make modifications to apks and jars

Can be themed easily

Can change/add/remove libraries and thus recompile all the current apks with the new implementation

Disadvantages:

Slower loading but just the one time when a modification is done or Dalvik-cache cleaned (wiped).

Space needed to put optimized dex in Dalvik-cache

If you still not familiar with the difference between odex and deodex files, check out XDA Elite Recognized Developer Adam Outler’s Pro Tip Number 5: Why You Should Odex and Deodex

[YOUTUBE]Y_FmiVhC2Jw[/YOUTUBE]​

Making modifications to an Odexed file requires a tedious and time consuming process of Deodexing, modifying, and then Reodexing. So here I thought, why not to have a tool by which I could deodex a targeted application, then I can do my modifications, then odex back the file again.. So it was the birth of this tool.. yey ;)

With power of baksmali and smali codes (credits to JesusFreke), and dexopt-wrapper and busybox binaries (credits to Denys Vlasenko); I have came up with this tool..

​

As Adam said, each device might need special way for odexing back.. So I don't know whether this tool will work on other devices other than Samsung GT-N7000 or not (but tectonically it should - give it a try and tell us your results :laugh:).

How to use:

It is simple.. Just click on Deodexer-Odexer-Tool.bat file and it will automatically create all needed folders.. As in splash screen explains..

A. For Deodexing:

1- Put whole framework files in "framework-dependencies" folder; you can use pull option in this tool.

2- Put jar or apk files, that you will deodex with their corresponding odex files in "put-file-here" folder.

3- Set Current-apk/jar and Current-Odex and start deodexing process.

B. For Odexing:

1- Put deodexed file in "finish" folder and name it as Deodexed_xx.x; example: Deodexed_SystemUI.apk, Deodexed_android.policy.jar

2- Put the original odex with its original corresponding jar or apk files in "put-file-here" folder.

3- Current-apk/jar, and Current-Odex are set to original files.

4- Set device to USB debugging mode and connected to PC.

5- Start odexing process.

The odexing process will push all needed files to your device, then it will pull the final odex files and will delete all temp files pushed to the device. This might requires root access permission since it will write on system partition and insecure boot.img or adbd insecure pre-installed on the device (credits to Elite Recognized Developer Chainfire for this app).

- Deodexer-Odexer-Tool_v1.0 @ 1/July/2013

Change-log:

@ 1/July/2013 (v1.0):

- First release...