FORUMS

Analysis & Opinion

Top Forum Discussions

[APP] 'ODEX ME': Odexing deodexed roms for a BOOST IN PERFORMANCE

597 posts
Thanks Meter: 238
 
By flolep, Senior Member on 24th February 2012, 12:40 PM
Post Reply Subscribe to Thread Email Thread
27th February 2012, 03:39 AM |#41  
open1your1eyes0's Avatar
Senior Member
Flag New York City
Thanks Meter: 3,650
 
Donate to Me
More
Quote:
Originally Posted by flolep

Wth?!

I am on b26 and have odexed and again no problem...

Are you guys on cdma or gsm devices. I am on gsm... Maybe it's the cause but I really won't understand if it's the case...

Sent from my Galaxy Nexus using xda premium

CDMA here.
 
 
27th February 2012, 04:08 AM |#42  
ArmanUV's Avatar
Senior Member
Thanks Meter: 222
 
More
Quote:
Originally Posted by flolep

Grrr. Did you really try before saying these things too?

I am a long time android user, was on i7500, then i9000, had an Asus transformer, and now have a galaxy nexus and transformer prime.

I read the same articles than yours. But you know what, I did my experience though, in reality and with day to day use.

And you know what is my own experience? My devices were all smoother when odexed than when deodexed. Ok?

So please let the users who want to try and have their own experience do their things...

+ +

Sent from my Galaxy Nexus using xda premium

I'm not holding anyone back. I am just inviting everyone to know the true pros and cons of something they are gonna flash on their 500+ phone. If you read the articles and still want to ignore all the technical evidence, then that's your choice.
And no, I didn't try it because i use the black exedus theme and I don't want to worry about messing everything up everytime I want to update it.
And remember stock is odexed and all the roms like aokp are not. Which one is smoother in your experience?
27th February 2012, 05:42 AM |#43  
Junior Member
Thanks Meter: 1
 
More
Quote:
Originally Posted by flolep

Boot time is better AND system applications are optimized (the o of odex) and thus slightly smoother...

Sent from my Galaxy Nexus using xda premium

Are you serious? Sys apps are optimized?

f2e
27th February 2012, 08:17 AM |#44  
flolep's Avatar
OP Senior Member
Thanks Meter: 238
 
More
Quote:
Originally Posted by fused2explod

Are you serious? Sys apps are optimized?

f2e

Go here and read...

---> http://android.stackexchange.com/que...-deodexed-roms

odex means Optimized Dalvik EXecutable...
The Following User Says Thank You to flolep For This Useful Post: [ View ]
27th February 2012, 08:27 AM |#45  
flolep's Avatar
OP Senior Member
Thanks Meter: 238
 
More
Quote:
Originally Posted by ArmanUV

I'm not holding anyone back. I am just inviting everyone to know the true pros and cons of something they are gonna flash on their 500+ phone. If you read the articles and still want to ignore all the technical evidence, then that's your choice.
And no, I didn't try it because i use the black exedus theme and I don't want to worry about messing everything up everytime I want to update it.
And remember stock is odexed and all the roms like aokp are not. Which one is smoother in your experience?

AOKP is smoother for sure but the reasons are not about deodexing...

Stock would be even slower if it wasn't odexed...

And AOKP is smoother when odexed.

The pros and cons are in the article I quoted just before.

++
27th February 2012, 08:41 AM |#46  
flolep's Avatar
OP Senior Member
Thanks Meter: 238
 
More
Quote:
Originally Posted by frantic912

i'm on GSM to....no idea....

Quote:
Originally Posted by open1your1eyes0

CDMA here.

Can you describe what exact configuration you have in rom control of aokp on status bar and navigation / soft keys so I could try it to see what is the culprit?
(screenshots would be good too...)
27th February 2012, 12:12 PM |#47  
frantic912's Avatar
Senior Member
Flag Putrajaya
Thanks Meter: 10
 
More
Quote:
Originally Posted by flolep

Can you describe what exact configuration you have in rom control of aokp on status bar and navigation / soft keys so I could try it to see what is the culprit?
(screenshots would be good too...)

now it working..just don't mod transparent status bar, that is the problem before....:thumbup:

Sent from my Galaxy Nexus using Tapatalk
The Following User Says Thank You to frantic912 For This Useful Post: [ View ]
27th February 2012, 01:05 PM |#48  
flolep's Avatar
OP Senior Member
Thanks Meter: 238
 
More
Quote:
Originally Posted by frantic912

now it working..just don't mod transparent status bar, that is the problem before....:thumbup:

Sent from my Galaxy Nexus using Tapatalk

Ok. Thanks.

I am adding this to OP.
27th February 2012, 02:54 PM |#49  
Senior Member
Flag Buckinghamshire
Thanks Meter: 130
 
More
Quote:
Originally Posted by flolep

Grrr. Did you really try before saying these things too?

I am a long time android user, was on i7500, then i9000, had an Asus transformer, and now have a galaxy nexus and transformer prime.

I read the same articles than yours. But you know what, I did my experience though, in reality and with day to day use.

And you know what is my own experience? My devices were all smoother when odexed than when deodexed. Ok?

So please let the users who want to try and have their own experience do their things...

+ +

Sent from my Galaxy Nexus using xda premium

It doesn't matter if you're a long time Android user. There are no measurable benefits to having odexed system/app directory apart from boot up time and space.

How do I know? I took Paul's script and amended it to odex the /system/framework directory before odexing the /system/app. The /system/app/ dex files are dependent on the framework files which is why the framework requires odexing before the system/app directory.

Now I can't recall how Paul specifies the bootclass path in his script as I'm at work and do not have the resources to decompile his application, but if he hardcoded the bootclass path into the script; there's a likely hood the app won't be 100% reliable on the Nexus due to the bootclass path most likely being different (especially as they're different versions of Android, with 4.0 being vastly different).

In my script, the bootclass path is hardcoded as there's a strict file sequence that needs to be odexed in order when it comes to odexing the framework. This isn't my latest version either, as I eventually went on to making the script check for deodexed system applications on boot and odexing them.

Warning: Don't use the script on the Galaxy Nexus, it was my script I used on the Galaxy SII
Code:
#!/system/bin/sh

chmod 755 /system/bin/dexopt-wrapper
chmod 755 /system/bin/zip
chmod -R 777 /data/original-framework/*.odex

coreframework="/system/framework/core.jar /system/framework/bouncycastle.jar /system/framework/ext.jar /system/framework/framework.jar /system/framework/android.policy.jar /system/framework/services.jar /system/framework/core-junit.jar"

echo "Odexing /system/framework/*jar files"

for i in $coreframework
do	
	filename=$(basename $i .jar)
	dexopt-wrapper $i /system/framework/$filename.odex /system/framework/core.jar:/system/framework/bouncycastle.jar:/system/framework/ext.jar:/system/framework/framework.jar:/system/framework/android.policy.jar:/system/framework/services.jar:/system/framework/core-junit.jar
	zip -d $i classes.dex
	busybox dd if=/data/original-framework/$filename.odex of=/system/framework/$filename.odex bs=1 count=20 skip=52 seek=52 conv=notrunc
done


for i in /system/framework/*.jar
do
	if [ $i == "/system/framework/core.jar" -o $i == "/system/framework/bouncycastle.jar" -o $i == "/system/framework/ext.jar" -o $i == "/system/framework/framework.jar" -o $i == "/system/framework/android.policy.jar" -o $i == "/system/framework/services.jar" -o $i == "/system/framework/core-junit.jar" ]
		then
			echo "Already odexed in sequence"
		else
			filename=$(basename $i .jar)
			dexopt-wrapper $i /system/framework/$filename.odex /system/framework/core.jar:/system/framework/bouncycastle.jar:/system/framework/ext.jar:/system/framework/framework.jar:/system/framework/android.policy.jar:/system/framework/services.jar:/system/framework/core-junit.jar
			zip -d $i classes.dex
			busybox dd if=/data/original-framework/$filename.odex of=/system/framework/$filename.odex bs=1 count=20 skip=52 seek=52 conv=notrunc
	fi
done

echo "Giving permissions to all *odex files"

chmod -R 777 /system/framework/*.odex

rm -r /data/dalvik-cache/*
I made all my own ROMs for the Galaxy SII and always odexed them but I never experienced a smoother phone, just quicker boot up times and space was never an issue for the Galaxy SII as it had plenty.
27th February 2012, 03:36 PM |#50  
flolep's Avatar
OP Senior Member
Thanks Meter: 238
 
More
Quote:
Originally Posted by Mekrel

It doesn't matter if you're a long time Android user. There are no measurable benefits to having odexed system/app directory apart from boot up time and space.

How do I know? I took Paul's script and amended it to odex the /system/framework directory before odexing the /system/app. The /system/app/ dex files are dependent on the framework files which is why the framework requires odexing before the system/app directory.

Now I can't recall how Paul specifies the bootclass path in his script as I'm at work and do not have the resources to decompile his application, but if he hardcoded the bootclass path into the script; there's a likely hood the app won't be 100% reliable on the Nexus due to the bootclass path most likely being different (especially as they're different versions of Android, with 4.0 being vastly different).

In my script, the bootclass path is hardcoded as there's a strict file sequence that needs to be odexed in order when it comes to odexing the framework. This isn't my latest version either, as I eventually went on to making the script check for deodexed system applications on boot and odexing them.

Warning: Don't use the script on the Galaxy Nexus, it was my script I used on the Galaxy SII

Code:
#!/system/bin/sh

chmod 755 /system/bin/dexopt-wrapper
chmod 755 /system/bin/zip
chmod -R 777 /data/original-framework/*.odex

coreframework="/system/framework/core.jar /system/framework/bouncycastle.jar /system/framework/ext.jar /system/framework/framework.jar /system/framework/android.policy.jar /system/framework/services.jar /system/framework/core-junit.jar"

echo "Odexing /system/framework/*jar files"

for i in $coreframework
do	
	filename=$(basename $i .jar)
	dexopt-wrapper $i /system/framework/$filename.odex /system/framework/core.jar:/system/framework/bouncycastle.jar:/system/framework/ext.jar:/system/framework/framework.jar:/system/framework/android.policy.jar:/system/framework/services.jar:/system/framework/core-junit.jar
	zip -d $i classes.dex
	busybox dd if=/data/original-framework/$filename.odex of=/system/framework/$filename.odex bs=1 count=20 skip=52 seek=52 conv=notrunc
done


for i in /system/framework/*.jar
do
	if [ $i == "/system/framework/core.jar" -o $i == "/system/framework/bouncycastle.jar" -o $i == "/system/framework/ext.jar" -o $i == "/system/framework/framework.jar" -o $i == "/system/framework/android.policy.jar" -o $i == "/system/framework/services.jar" -o $i == "/system/framework/core-junit.jar" ]
		then
			echo "Already odexed in sequence"
		else
			filename=$(basename $i .jar)
			dexopt-wrapper $i /system/framework/$filename.odex /system/framework/core.jar:/system/framework/bouncycastle.jar:/system/framework/ext.jar:/system/framework/framework.jar:/system/framework/android.policy.jar:/system/framework/services.jar:/system/framework/core-junit.jar
			zip -d $i classes.dex
			busybox dd if=/data/original-framework/$filename.odex of=/system/framework/$filename.odex bs=1 count=20 skip=52 seek=52 conv=notrunc
	fi
done

echo "Giving permissions to all *odex files"

chmod -R 777 /system/framework/*.odex

rm -r /data/dalvik-cache/*
I made all my own ROMs for the Galaxy SII and always odexed them but I never experienced a smoother phone, just quicker boot up times and space was never an issue for the Galaxy SII as it had plenty.

Thank you for your interesting explanations.
27th February 2012, 03:42 PM |#51  
adrynalyne's Avatar
Recognized Developer
Thanks Meter: 6,596
 
More
Quote:
Originally Posted by flolep

Grrr. Did you really try before saying these things too?

I am a long time android user, was on i7500, then i9000, had an Asus transformer, and now have a galaxy nexus and transformer prime.

I read the same articles than yours. But you know what, I did my experience though, in reality and with day to day use.

And you know what is my own experience? My devices were all smoother when odexed than when deodexed. Ok?

So please let the users who want to try and have their own experience do their things...

+ +

Sent from my Galaxy Nexus using xda premium


If you can show me technical info on the difference, I will listen. Otherwise, I am just going to keep rolling my eyes.

Read More
Post Reply Subscribe to Thread

Tags
deodex, nexus, odex, performance, rom

Guest Quick Reply (no urls or BBcode)
Message:
Previous Thread Next Thread
Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes