What Do You Do with All of Your Old Photos?

Smartphone cameras have advanced so tremendously over the past few years that they have … more

Diving into the April 2015 Material Design Update

Before the release of Android 5.0 Lollipop, the Holo Design guidelines served as the … more

New Cyanogen Partnerships Bring Privacy Concerns

New Privacy concerns have emerged regarding Cyanogen’s latest announcements, … more

PSA: Google Play Services Wakelock Affects Many 5.x ROMs

Wakelocks are the bane of the battery conscious, and this wakelock bug has been … more

 View Poll Results: Do you prefer deodex ore odex?

Odex
 
33 Vote(s)
73.33%
Deodex
 
12 Vote(s)
26.67%
Post Reply Subscribe to Thread Email Thread

[ODEX][SCRIPT] Odexer Tool 1.6 (11-04-2014)(MM-dd-yyyy)

28th October 2014, 07:48 AM |#1  
MatrixDJ96's Avatar
OP Senior Member
Flag Genova
Thanks Meter: 2,401
 
970 posts
Join Date:Joined: Nov 2012
Would you like to increase stability and battery life, to don't have lag to open system app and to have better ram utilization? Now you can! (Only for rooted phone and deodexed ROM)

This is possible with Odexer Tool created by myself.
I've worked a lot of time to create this script and I want to share it with you.


What is ODEX and DEODEX?
In Android file system, applications come in packages with the extension .apk. These application packages, or APKs contain certain .odex files whose supposed function is to save space. These odex files are actually collections of parts of an application that are optimized before booting. Doing so speeds up the boot process, as it preloads part of an application. On the other hand, it also makes hacking those applicationsdifficult because a part of the coding has already been extracted to another location before execution.
THEN COMES DEODEX
Deodexing is basically repackaging of these APKs in a certain way, such that they are reassembled into classes.dex files. By doing that, all pieces of an application package are put together back in one place, thus eliminating theworry of a modified APK conflicting with some separate odexed parts.
In summary, Deodexed ROMs (or APKs) have all their application packages put back together in one place, allowing for easy modification such as theming. Since no pieces of code are coming from any external location, custom ROMs or APKs are always deodexed to ensure integrity.

My explanation is this:
If you odex the rom, you'll have more space in data (this is important because if you don't have partition ext4 in sdcard, you won't have too free space), you'll increase battery life, you'll have more stability and perfomance (the ROM is more faster to load system and app) but it's too difficult to modifie apk after odex (you can't mod APKs if there isn't classes.dex inside before deodex it).
In fact ODEX is an OPTIMIZED-DEX and Android load system and app faster than deodexed (DEOPTIMIZED-DEX) app and system.
When you have a deodex file (a lot of roms are deodexed) you have File.apk in system/app and in data/dalvik-cache/system@app@File.apk@classes.dex, but with odex file you have File.apk in system/app and File.odex in system/app
Stock ROMs are all odexed to have this features and my script allow you to re-add these on your custom ROM.

With these explanations you can understand that:
Odexed ROM = Faster, more stability and battery life, less ram utilization but difficult customization of APKs and a little bit slower boot
Deodexed ROM = Slower, less stability and battery life, more ram utilization but easy customization of APKs and a little bit faster boot

If you run this script with "Remove classes.dex: Disabled", your rom will be odexed without difficult customization of APKs but remember to re-odex it after mod.

My script does (it depends by option):
- Odex framework (of course also bootstrap)
- Odex app in system/app
- Odex app in system/priv-app (if you have android kitkat)
- Remove classes.dex from jar/apk (if you enable this option)

All commands of my script:
+ frame [odex all framework]
+ sysapp [odex all system apps]
+ all [odex framework and system apps]
+ set [change settings of the script]
+ exit [exit from the script]
+ easter egg [nothing important]

WORKING WITH FOLLOWING ANDROID VERSIONS
- Froyo
- GingerBread
- Honeycomb
- IceCreamSandwich
- JellBean
- KitKat
- NO LOLLIPOP (for now)

Credits:
- @MatrixDJ96 (Me)
- MrTony68 (Beta Tester)
- @Thyrus (Beta Tester)
- @angel.sea (For Support)
- Stericson (For BusyBox)

TO DEVELOPES
If you want to use or add this script on your ROM, you MUST give me credit in your thread.
Thanks for the cooperation


Follow me here: Odexer Tool Official Community

ENJOY WITH ODEXER TOOL!!!

Please, give me a thanks if you like my work

By MatrixDJ96
Last edited by MatrixDJ96; 4th November 2014 at 10:18 PM.
The Following 29 Users Say Thank You to MatrixDJ96 For This Useful Post: [ View ]
 
 
28th October 2014, 07:48 AM |#2  
MatrixDJ96's Avatar
OP Senior Member
Flag Genova
Thanks Meter: 2,401
 
970 posts
Join Date:Joined: Nov 2012
CHANGELOGS:
*** Odexer Tool 1.6 ***
- Fixed TOO MANY bugs
-----------------------------------
*** Odexer Tool 1.5 TEST ***
- Fixed bugs
-----------------------------------
*** Odexer Tool 1.4 ***
- Reworked a lot of the script
- Fixed some bugs
- Added ability to start directly odex (for ex. now you can start it with 'odex all' without type before only 'odex' and after the command)
- Added support of X86 (Mips not support yet)
-----------------------------------
*** Odexer Tool 1.3 TEST ***
- Added check of root
- Reworked completely the script
- Fixed a lot of bugs
- Removed creation of update.zip (removed option)
- Only for ARMEABI
-----------------------------------
*** Odexer Tool 1.2 ***
- Fixed creation of flashable zip in some device
- Fixed a lot of bugs
- More compatible
-----------------------------------
*** Odexer Tool 1.1.1 ***
- Fixed "elif syntax error"
-----------------------------------
*** Odexer Tool 1.1 ***
- Fixed creation of flashable zip in some device
- Disabled command to change settings with kitkat
- Fixed minor bugs
-----------------------------------
*** Odexer Tool 1.0 ***
- First stable version
Last edited by MatrixDJ96; 4th November 2014 at 07:31 AM.
The Following 9 Users Say Thank You to MatrixDJ96 For This Useful Post: [ View ]
28th October 2014, 07:50 AM |#3  
MatrixDJ96's Avatar
OP Senior Member
Flag Genova
Thanks Meter: 2,401
 
970 posts
Join Date:Joined: Nov 2012
Exclamation
HOW TO FIX 'Android is upgrading...' FOR ANDROID VERSION 2.2 TO 4.3.1 :
*** Remove files classes.dex from APKs/JARs in /system/app and /system/framework that have classes.dex ***
Last edited by MatrixDJ96; 28th October 2014 at 10:42 AM.
The Following 5 Users Say Thank You to MatrixDJ96 For This Useful Post: [ View ]
28th October 2014, 07:50 AM |#4  
MatrixDJ96's Avatar
OP Senior Member
Flag Genova
Thanks Meter: 2,401
 
970 posts
Join Date:Joined: Nov 2012
Exclamation
IMPORTANT TO ODEX KITKAT ROM:
*** The options "Remove classes.dex" must be disabled (the script autodetect it and disable this option automatically) ***
Last edited by MatrixDJ96; 28th October 2014 at 10:42 AM.
The Following 5 Users Say Thank You to MatrixDJ96 For This Useful Post: [ View ]
28th October 2014, 07:50 AM |#5  
MatrixDJ96's Avatar
OP Senior Member
Flag Genova
Thanks Meter: 2,401
 
970 posts
Join Date:Joined: Nov 2012
HOW TO ODEX YOUR ROM:
To odex framework you must have at least 14% of free space in system.
To odex system apps you must have at least 24% of free space in system.
To odex all system you must have at least 31% of free space in system.


IT'S BETTER DOING A NANDROID BACKUP BEFORE BUT IT'S UP TO YOU
1 - Download Odexer Tool
2 - Reboot into recovery
3 - Install Odexer Tool
4 - Reboot into system
5 - Open Terminal Emulator (will be installed automaticaly)
6 - Type su to obtain root permission
7 - Type odex and enjoy!

I hope that all are clear

+++++++++++++++++++++++++++++++++
Download link:
Odexer Tool
+++++++++++++++++++++++++++++++++
Last edited by MatrixDJ96; 28th October 2014 at 10:43 AM.
The Following 10 Users Say Thank You to MatrixDJ96 For This Useful Post: [ View ]
28th October 2014, 07:59 AM |#6  
MatrixDJ96's Avatar
OP Senior Member
Flag Genova
Thanks Meter: 2,401
 
970 posts
Join Date:Joined: Nov 2012
v1.5 released but need test
The Following 4 Users Say Thank You to MatrixDJ96 For This Useful Post: [ View ]
28th October 2014, 09:54 AM |#7  
kmokhtar79's Avatar
Recognized Contributor
Flag Beijing
Thanks Meter: 9,766
 
3,318 posts
Join Date:Joined: Aug 2012
Donate to Me
More
Great tool and nice to see you here @MatrixDJ96! I just have once question, is odex file (smali) completely removed from the deodex apk files, once I read on another thread that smali files would be still remained within the apk which makes the total size of one apk+odex bigger than original ones.
The Following User Says Thank You to kmokhtar79 For This Useful Post: [ View ]
28th October 2014, 10:11 AM |#8  
MatrixDJ96's Avatar
OP Senior Member
Flag Genova
Thanks Meter: 2,401
 
970 posts
Join Date:Joined: Nov 2012
Quote:
Originally Posted by kmokhtar79

Great tool and nice to see you here @MatrixDJ96! I just have once question, is odex file (smali) completely removed from the deodex apk files, once I read on another thread that smali files would be still remained within the apk which makes the total size of one apk+odex bigger than original ones.

From first version of Android to JB 4.3.1 you could remove classes.dex from APKs to gain free space and don't show android is upgrading on every boot but on android 4.4+ use must have APKs with classes.dex inside and if you want file odex external like File.apk, File.odex because Dalvik (classes.dex and not only odexed file) is necessary if you want to change runtime to art
The Following 3 Users Say Thank You to MatrixDJ96 For This Useful Post: [ View ]
28th October 2014, 10:17 AM |#9  
kmokhtar79's Avatar
Recognized Contributor
Flag Beijing
Thanks Meter: 9,766
 
3,318 posts
Join Date:Joined: Aug 2012
Donate to Me
More
Nice I would try odexing my rom then. Thanks
28th October 2014, 10:51 AM |#10  
shapk's Avatar
Senior Member
Thanks Meter: 98
 
327 posts
Join Date:Joined: Jul 2012
Wich one works on N9005? X86 or Armeabi?
Post Reply Subscribe to Thread
Previous Thread Next Thread
Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes