Deodexing com.htc.framework
27 Jan 2010This is just an small tutorial that shows how deodexing works.
First of all you need these three tools, deodexerant , baksmali and smali
Connect your phone with USB and make sure you can acces adb and then do the following:
adb push deodexerant /data/local
adb shell chmod 755 /data/local/deodexerant
adb forward tcp:1234 tcp:1234
adb pull /system/app/com.htc.framework.odex .
adb shell /data/local/deodexerant /system/app/com.htc.framework.odex 1234 &
java -jar baksmali.jar -x :1234 com.htc.framework.odex
Now that you have a deodexd files in the out folder you need to create the classes.dex file again.
java -jar smali-1.1.jar -d classes.dex out
It’s time to put the classes.dex in to the empty com.htc.framework.jar.
adb pull com.htc.framework.jar
zip com.htc.framework.jar classes.dex
You have an deodexd com.htc.framework.jar, if you wish to use it you need to sign it:
java -jar ~/myandroid/out/host/linux-x86/framework/signapk.jar ~/myandroid/build/target/product/security/testkey.x509.pem ~/myandroid/build/target/product/security/testkey.pk8 com.htc.framework.jar signed.jar
You are done!