Page 1 of 2 12 LastLast
Results 1 to 15 of 16
  1. #1
    offline So I Hear You Can Mod
    Join Date
    Dec 2009
    Posts
    150
    Thanks
    13
    Thanked 40 Times in 24 Posts
    Downloads
    28
    Uploads
    0

    How to de-odex a CLIQ rom

    An easy and automated way to de-odex a CLIQ rom (or any for that matter) is to use a "kitchen".

    I started with dsixda's HTC Android Kitchen. Latest version is here.

    It is primary for HTC phones but there is much of it that works for the CLIQ, including the de-odex script (with some additions).

    The do_odex_file in the scripts directory has checks for specific files and adds on extra dependencies to de-odex them.

    Between line 94 and 95 is where the changes need to go (see below):
    elif [ "$odex_file" == "com.htc.rss.odex" ]
    then
    ### CLIQ stuff goes here ###
    ignore_errors=yes
    fi

    Add in the following:
    ### MOTOROLA CLIQ
    elif [ "$odex_file" == "com.motorola.blur.library.friendfeed.odex" ] ||
    [ "$odex_file" == "com.motorola.blur.library.home.odex" ] ||
    [ "$odex_file" == "com.motorola.blur.library.service.odex" ]
    then
    classfile=com.motorola.blur.library.utilities.jar

    elif [ "$odex_file" == "AdminFeedNotifier.odex" ]
    then
    classfile=com.motorola.blur.library.service.jar:co m.motorola.blur.library.utilities.jar

    elif [ "$odex_file" == "AdService.odex" ]
    then
    classfile=com.motorola.android.mobad.jar

    elif [ "$odex_file" == "BlurAlarmClock.odex" ]
    then
    classfile=com.motorola.android.widget.jar

    elif [ "$odex_file" == "BlurCalendar.odex" ]
    then
    classfile=com.motorola.blur.library.utilities.jar: com.motorola.blur.library.messaging.jar

    elif [ "$odex_file" == "BlurCalendarProvider.odex" ]
    then
    classfile=com.motorola.android.widget.jar:com.moto rola.blur.library.home.jar:com.motorola.blur.libra ry.utilities.jar

    elif [ "$odex_file" == "BlurContacts.odex" ]
    then
    classfile=com.motorola.blur.library.utilities.jar

    elif [ "$odex_file" == "BlurContactsSync.odex" ]
    then
    classfile=com.motorola.blur.library.service.jar:co m.motorola.blur.library.utilities.jar

    elif [ "$odex_file" == "BlurEmailEngine.odex" ]
    then
    classfile=com.motorola.blur.library.messaging.jar: com.motorola.blur.library.service.jar:com.motorola .blur.library.utilities.jar

    elif [ "$odex_file" == "BlurEmail.odex" ]
    then
    classfile=com.motorola.blur.library.messaging.jar: com.motorola.blur.library.utilities.jar

    elif [ "$odex_file" == "BlurHome.odex" ]
    then
    classfile=com.motorola.blur.library.home.jar:com.m otorola.blur.library.utilities.jar

    elif [ "$odex_file" == "BlurPhone.odex" ]
    then
    classfile=com.motorola.android.widget.jar:com.moto rola.blur.library.utilities.jar

    elif [ "$odex_file" == "BlurSNMessagingEngine.odex" ]
    then
    classfile=com.motorola.blur.library.messaging.jar: com.motorola.blur.library.service.jar:com.motorola .blur.library.utilities.jar

    elif [ "$odex_file" == "BlurUpdater.odex" ]
    then
    classfile=com.motorola.blur.library.service.jar:co m.motorola.blur.library.utilities.jar

    elif [ "$odex_file" == "CalendarSync.odex" ]
    then
    classfile=com.motorola.blur.library.messaging.jar: com.motorola.blur.library.service.jar:com.motorola .blur.library.utilities.jar

    elif [ "$odex_file" == "ClockWidget.odex" ]
    then
    classfile=com.motorola.blur.library.home.jar:com.m otorola.blur.library.utilities.jar

    elif [ "$odex_file" == "ContactsData.odex" ]
    then
    classfile=com.motorola.blur.library.messaging.jar: com.motorola.blur.library.service.jar:com.motorola .blur.library.utilities.jar

    elif [ "$odex_file" == "ContactsUnconnected.odex" ]
    then
    classfile=com.motorola.blur.library.messaging.jar: com.motorola.blur.library.utilities.jar

    elif [ "$odex_file" == "FirewallService.odex" ]
    then
    classfile=com.motorola.android.Firewall.jar

    elif [ "$odex_file" == "megamaid.odex" ]
    then
    classfile=com.motorola.blur.library.service.jar:co m.motorola.blur.library.utilities.jar

    elif [ "$odex_file" == "MessagesWidget.odex" ]
    then
    classfile=com.motorola.blur.library.home.jar:com.m otorola.blur.library.utilities.jar

    elif [ "$odex_file" == "Messaging.odex" ]
    then
    classfile=com.motorola.blur.library.messaging.jar: com.motorola.blur.library.utilities.jar

    elif [ "$odex_file" == "NewsWidget.odex" ]
    then
    classfile=com.motorola.blur.library.home.jar:com.m otorola.blur.library.service.jar:com.motorola.blur .library.utilities.jar

    elif [ "$odex_file" == "oma1motService.odex" ]
    then
    classfile=com.motorola.android.drm1.jar

    elif [ "$odex_file" == "OMADownload.odex" ]
    then
    classfile=com.motorola.android.mime.jar

    elif [ "$odex_file" == "PhoneAddons.odex" ]
    then
    classfile=com.motorola.android.telephony.jar

    elif [ "$odex_file" == "QuickContactWidget.odex" ]
    then
    classfile=com.motorola.blur.library.home.jar:com.m otorola.blur.library.utilities.jar

    elif [ "$odex_file" == "SetupProvider.odex" ]
    then
    classfile=com.motorola.blur.library.service.jar:co m.motorola.blur.library.utilities.jar

    elif [ "$odex_file" == "SocialShare.odex" ]
    then
    classfile=com.motorola.blur.library.service.jar:co m.motorola.blur.library.utilities.jar

    elif [ "$odex_file" == "StatusWidget.odex" ]
    then
    classfile=com.motorola.blur.library.friendfeed.jar :com.motorola.blur.library.home.jar:com.motorola.b lur.library.utilities.jar

    elif [ "$odex_file" == "StickyNoteWidget.odex" ]
    then
    classfile=com.motorola.blur.library.home.jar:com.m otorola.blur.library.utilities.jar

    elif [ "$odex_file" == "UniversalInbox.odex" ]
    then
    classfile=com.motorola.blur.library.utilities.jar: com.motorola.blur.library.messaging.jar

    elif [ "$odex_file" == "WeatherWidget.odex" ]
    then
    classfile=com.motorola.android.widget.jar:com.moto rola.blur.library.home.jar:com.motorola.blur.libra ry.utilities.jar

    elif [ "$odex_file" == "WmdrmDla.odex" ]
    then
    classfile=com.motorola.android.wmdrm.jar

    elif [ "$odex_file" == "WorkContacts.odex" ]
    then
    classfile=com.motorola.blur.library.messaging.jar: com.motorola.blur.library.service.jar:com.motorola .blur.library.utilities.jar

    Then you can use the regular menu steps to de-odex the rom:
    "0 - ADVANCED OPTIONS"
    "11 - Deodex files in your ROM"
    "b = Deodex both folders"

    I've attached a copy of the modified file as a zip file (wouldn't let me upload a file without an extension).
    Attached Files Attached Files
    Last edited by miharkula; 09-05-2010 at 11:08 AM.

  2. 6 Users Say Thank You to miharkula For This Useful Post

    adlx (08-30-2010), Danation (08-26-2010), denkai (09-08-2010), iKhaos (10-23-2010), sublime1184 (09-04-2010), toxigenicpoem (08-26-2010)

  3. #2
    Danation's Avatar
    offline public static final boolean isEvil() { return true; }
    Join Date
    Oct 2008
    Posts
    6,880
    Thanks
    4,383
    Thanked 3,384 Times in 2,117 Posts
    Downloads
    3
    Uploads
    0
    Nice Thanks for posting that.

    Which roms have you tested it on?

    _.__.__._I have retired. If you PM me, I may not reply.

  4. #3
    offline So I Hear You Can Mod
    Join Date
    Dec 2009
    Posts
    150
    Thanks
    13
    Thanked 40 Times in 24 Posts
    Downloads
    28
    Uploads
    0
    Quote Originally Posted by Danation View Post
    Nice Thanks for posting that.

    Which roms have you tested it on?
    Just the 2.0.26 update. I initially did it as a learning experience and to create a rom/mod of my own. Decided once I figured out how to get all the files de-odexed I'd post it..just took me longer then expected to find the time.

  5. #4
    offline So I Hear You Can Mod
    Join Date
    Jun 2010
    Location
    Australia
    Posts
    489
    Thanks
    17
    Thanked 123 Times in 99 Posts
    Downloads
    16
    Uploads
    0
    Can someone explain what the benefits and pitfalls of doing this are? Is it just so you can change some icons and fonts? If so... meh...(I guess I am getting old.. although I did like the icon changes adumont did to adlxmod-2.0.. only a handful but better than the 1.5 ones Motorola left in this 2.1 version!)

  6. #5
    offline So I Hear You Can Mod
    Join Date
    Dec 2009
    Posts
    150
    Thanks
    13
    Thanked 40 Times in 24 Posts
    Downloads
    28
    Uploads
    0
    Quote Originally Posted by tonymy01 View Post
    Can someone explain what the benefits and pitfalls of doing this are? Is it just so you can change some icons and fonts? If so... meh...(I guess I am getting old.. although I did like the icon changes adumont did to adlxmod-2.0.. only a handful but better than the 1.5 ones Motorola left in this 2.1 version!)
    It makes it easier to theme and allows some things you couldn't do otherwise (like making the status bar background black).

  7. #6
    offline Itty Bitty Modder
    Join Date
    Jul 2010
    Posts
    2
    Thanks
    0
    Thanked 0 Times in 0 Posts
    Downloads
    4
    Uploads
    0
    Thanks miharkula, I'll add this modification to the next iteration of the kitchen

    Please always notify me if you find more stuff like this.

    -dsixda

  8. #7
    offline So I Hear You Can Mod
    Join Date
    Dec 2009
    Posts
    150
    Thanks
    13
    Thanked 40 Times in 24 Posts
    Downloads
    28
    Uploads
    0
    Quote Originally Posted by dsi76 View Post
    Thanks miharkula, I'll add this modification to the next iteration of the kitchen

    Please always notify me if you find more stuff like this.

    -dsixda
    Thanks. I thought about PM'ing you over at XDA but since it's mainly for HTC phones, I wasn't sure you'd want it in there. (I just noticed that there's a duplicate in my code which I'm guessing most people noticed and I'll fix in a sec).

  9. #8
    offline So I Hear You Can Mod
    Join Date
    Mar 2010
    Posts
    315
    Thanks
    71
    Thanked 226 Times in 78 Posts
    Downloads
    15
    Uploads
    0
    Quote Originally Posted by tonymy01 View Post
    Can someone explain what the benefits and pitfalls of doing this are? Is it just so you can change some icons and fonts? If so... meh...(I guess I am getting old.. although I did like the icon changes adumont did to adlxmod-2.0.. only a handful but better than the 1.5 ones Motorola left in this 2.1 version!)
    Tonymy01 the benefits: the APKs become platform independent. Meaning you can move APKs from one build to the next without regard to the Frameworks OR the MACHINE that reside in each build. As it was stated above you also get access to be able to modify the RES without needing to worry about messing up the relationship with other APKs that rely on the signatures of those APKS. Usually it is desirable to DEODEX a build when you plan to decompile, and modify any of the APKS.

    Pitfalls: You are removing the device optimization from the APK. The APK will be semi-odexed at initial boot which will be slower on first flash as dalvik-cache is loaded up. This conversion also does not move memory pointers into native calls, but leaves them in dalvik calls to be cleaned up by the JVM, in the ODEX form they are native memory pointer calls. And since they need to be initialized and moved over to data you essentially eat double the space for the .DEX file, once inside the APK and then a second time to be ODEX'd inside dalivk-cache.

    Generally it is preference, but i find ODEX to run much faster all around, and depending on the size of the build save a good amount of space on the NAND.

  10. #9
    offline Developer
    Join Date
    Mar 2009
    Posts
    363
    Thanks
    2
    Thanked 70 Times in 32 Posts
    Downloads
    19
    Uploads
    0
    hey budd i followed your guide and iv tried it multiple times and keep recieving syntax errors when deodexing

    the error is related to adminfeednotifier.odex
    Last edited by godfather123189; 09-03-2010 at 11:12 PM.




  11. #10
    offline Itty Bitty Modder
    Join Date
    Jul 2010
    Posts
    2
    Thanks
    0
    Thanked 0 Times in 0 Posts
    Downloads
    4
    Uploads
    0
    Quote Originally Posted by godfather123189 View Post
    hey budd i followed your guide and iv tried it multiple times and keep recieving syntax errors when deodexing

    the error is related to adminfeednotifier.odex
    Please post the complete error message.

    Quote Originally Posted by miharkula View Post
    Thanks. I thought about PM'ing you over at XDA but since it's mainly for HTC phones, I wasn't sure you'd want it in there. (I just noticed that there's a duplicate in my code which I'm guessing most people noticed and I'll fix in a sec).
    Well my aim is to make it universal. Any idea why it's not possible to make a flashable ROM for the CLIQ with the kitchen (I don't have this device so I cannot test)?
    Last edited by dsi76; 09-04-2010 at 02:36 AM. Reason: Automerged Doublepost

  12. #11
    offline Developer
    Join Date
    Mar 2009
    Posts
    363
    Thanks
    2
    Thanked 70 Times in 32 Posts
    Downloads
    19
    Uploads
    0
    here is a screenshot of the error

    it does the same error for every file in system/app and framework


    it does this error under cygwin and actual linux

    does it work for you if you try to deodex a cliq rom?
    Last edited by godfather123189; 09-04-2010 at 06:57 PM. Reason: Automerged Doublepost




  13. #12
    offline So I Hear You Can Mod
    Join Date
    Dec 2009
    Posts
    150
    Thanks
    13
    Thanked 40 Times in 24 Posts
    Downloads
    28
    Uploads
    0
    Quote Originally Posted by godfather123189 View Post
    it does this error under cygwin and actual linux

    does it work for you if you try to deodex a cliq rom?
    I removed the bb code block notation in my post. I didn't notice but it was parsing the code incorrectly and removed the variable name from the if statements.

    Quote Originally Posted by dsi76 View Post
    Well my aim is to make it universal. Any idea why it's not possible to make a flashable ROM for the CLIQ with the kitchen (I don't have this device so I cannot test)?
    It is possible. I used the kitchen for just about everything when I was working on a rom.
    Last edited by miharkula; 09-04-2010 at 09:53 PM. Reason: Automerged Doublepost

  14. #13
    offline Developer
    Join Date
    Mar 2009
    Posts
    363
    Thanks
    2
    Thanked 70 Times in 32 Posts
    Downloads
    19
    Uploads
    0
    Quote Originally Posted by miharkula View Post
    I removed the bb code block notation in my post. I didn't notice but it was parsing the code incorrectly and removed the variable name from the if statements.



    It is possible. I used the kitchen for just about everything when I was working on a rom.
    would it be possible that you post your file for me to try instead of me making the changes because im still coming up with the same error




  15. #14
    offline So I Hear You Can Mod
    Join Date
    Dec 2009
    Posts
    150
    Thanks
    13
    Thanked 40 Times in 24 Posts
    Downloads
    28
    Uploads
    0
    Quote Originally Posted by godfather123189 View Post
    would it be possible that you post your file for me to try instead of me making the changes because im still coming up with the same error
    Attached to original message

  16. #15
    offline Developer
    Join Date
    Mar 2009
    Posts
    363
    Thanks
    2
    Thanked 70 Times in 32 Posts
    Downloads
    19
    Uploads
    0
    Quote Originally Posted by miharkula View Post
    Attached to original message
    thank you bud i think that fixed the problem
    idk what the difference is between the way u did it and i did it but its not erroring out.. its running now




Page 1 of 2 12 LastLast

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •