[UTILITY] Android Utility - [apktool|dex2jar|smali|more][Mac & Linux][Feb13, 2012]

Search This thread

CleveRuse

Senior Member
Apr 14, 2011
1,134
148
Imperial, PA
I usually don't have a problem with patches while changing hues as long as I decompile first, obviously. If I'm also changing brightness, or just to be safe, I'll select the image with select tool, so that the patches (border) is excluded. Also, grabbing specific colors works ....but takes long to open option in GIMP.

I'm editing all highlights and buttons to be smoother (removing creases) by selecting inner area, blurring, then applying a gradient effect so it appears rounded slightly (I especially hate when the highlight is creased and button is not) .....I need the shading to expand smoothly, so I need to use continuous lines for atleast the right side.

Note: I have found that some .9s w/ double dotted or lined sides do recompile correctly and have also found that for some .9s w/ images inside them, one dot on each side of 3 corners is the only thing that works so that the area expands but not the image inside (especially small perfectly round buttons) I'd love to know why HTC can do this and we can't
 
Last edited:

tommytomatoe

Inactive Recognized Developer
Dec 13, 2010
6,282
6,800
34
Knoxville USA
Yep, btw have any Idea which XML decides the color of the text of the menu items (i.e. when you press the menu button the icons have text and their color), I changed the background of the menu to black and the text is black too, I'm pretty sure its in framework or systemUI, but I can't find it.

I don't remember who I was helping but this mod is intensive. It involves framework.jar and a lot of other smali. To be honest I havent ddone it for sense 2.1++ so I don't know. The smalis are much more intricate in the later sense roms. Damn htc. Lol. It is a hard mod to do. But if you know how to do it then I wish you the best!

Sent from my PC36100 using Tapatalk
 

tommytomatoe

Inactive Recognized Developer
Dec 13, 2010
6,282
6,800
34
Knoxville USA
I usually don't have a problem with patches while changing hues as long as I decompile first, obviously. If I'm also changing brightness, or just to be safe, I'll select the image with select tool, so that the patches (border) is excluded. Also, grabbing specific colors works ....but takes long to open option in GIMP.

I'm editing all highlights and buttons to be smoother (removing creases) by selecting inner area, blurring, then applying a gradient effect so it appears rounded slightly (I especially hate when the highlight is creased and button is not) .....I need the shading to expand smoothly, so I need to use continuous lines for atleast the right side.

Note: I have found that some .9s w/ double dotted or lined sides do recompile correctly and have also found that for some .9s w/ images inside them, one dot on each side of 3 corners is the only thing that works so that the area expands but not the image inside (especially small perfectly round buttons) I'd love to know why HTC can do this and we can't

Interesting find man! Well here is the skinny (I think). As far as we know HTC has their own compilers for their sense apps. They have written proprietary methods to make apps that are slightly different than the basic AOSP methods. I think I read that somewhere (posted on the apktool thread). That's why certain apps (HTC_ime) are a super pain.

This isn't an official statement, just something I read a long time ago.

Sent from my PC36100 using Tapatalk
 

fowenati

Senior Member
Sep 16, 2010
1,940
462
Los Angeles, CA
I don't remember who I was helping but this mod is intensive. It involves framework.jar and a lot of other smali. To be honest I havent ddone it for sense 2.1++ so I don't know. The smalis are much more intricate in the later sense roms. Damn htc. Lol. It is a hard mod to do. But if you know how to do it then I wish you the best!

Sent from my PC36100 using Tapatalk

Agh I've been trying to do this for the past 3 days straight, so tiring. I was hoping it would be as easy as changing a single XML value
 

CleveRuse

Senior Member
Apr 14, 2011
1,134
148
Imperial, PA
Interesting find man! Well here is the skinny (I think). As far as we know HTC has their own compilers for their sense apps. They have written proprietary methods to make apps that are slightly different than the basic AOSP methods. I think I read that somewhere (posted on the apktool thread). That's why certain apps (HTC_ime) are a super pain.

This isn't an official statement, just something I read a long time ago.

Sent from my PC36100 using Tapatalk

Well that's cool .....for them! LOL, Thnx man!

Sent from my ADR6400L using XDA App
 

tommytomatoe

Inactive Recognized Developer
Dec 13, 2010
6,282
6,800
34
Knoxville USA

I had to get it fixed so I unrooted and s on. And that latest ota has no root method and being s on I can't roll back with the newest hboot 2.16. Its okay. It have me time from mods to write android-utility. And plus I discovered new things like renaming packages and Modding the sense UI while unrooted. :)

Sent from my PC36100 using Tapatalk
 

fowenati

Senior Member
Sep 16, 2010
1,940
462
Los Angeles, CA
I had to get it fixed so I unrooted and s on. And that latest ota has no root method and being s on I can't roll back with the newest hboot 2.16. Its okay. It have me time from mods to write android-utility. And plus I discovered new things like renaming packages and Modding the sense UI while unrooted. :)

Sent from my PC36100 using Tapatalk


Ahah well one closed door opens another, does AU support decompiling of Jar files? I want to edit services.jar to remove USB debuging and Allow CRTanims but the dex file comes out to a bunch of gibberish, can AU decompile/recompile this?
 

tommytomatoe

Inactive Recognized Developer
Dec 13, 2010
6,282
6,800
34
Knoxville USA
Ahah well one closed door opens another, does AU support decompiling of Jar files? I want to edit services.jar to remove USB debuging and Allow CRTanims but the dex file comes out to a bunch of gibberish, can AU decompile/recompile this?

Au cannot do jars yet. V1.0.2 will.

But...by installing au you automatically get baksmali and smali :)

Type this for options.

java -jar /usr/local/bin/baksmali.jar

And

java -Xmx512M -jar /usr/local/bin/smali.jar

Sent from my PC36100 using Tapatalk
 

tommytomatoe

Inactive Recognized Developer
Dec 13, 2010
6,282
6,800
34
Knoxville USA
Odexed, Im simply trying to merge two mods I found(one for removing USB Debugging Icon) and the Other for CRT Animations.

I see. With odex you need tto deodex the services.odex first before you can mod it.

java -jar /usr/local/bin/baksmali.jar -d framework-folder -x services.odex -o out-folder

In the above, the "framework-folder" refers to all framework files. Just make a copy of system/framework on your working folder (adb pull system/framework /PATH/TO/framework-folder)

Sent from my PC36100 using Tapatalk
 

fowenati

Senior Member
Sep 16, 2010
1,940
462
Los Angeles, CA
I see. With odex you need tto deodex the services.odex first before you can mod it.

java -jar /usr/local/bin/baksmali.jar -d framework-folder -x services.odex -o out-folder

In the above, the "framework-folder" refers to all framework files. Just make a copy of system/framework on your working folder (adb pull system/framework /PATH/TO/framework-folder)

Sent from my PC36100 using Tapatalk

Hmm, I'll try that in my next build, right now I'm just gonna choose one of them to use, since I already have a setup modded services for the CRT Anims.
 

fowenati

Senior Member
Sep 16, 2010
1,940
462
Los Angeles, CA
For some reason I can't decompile Framework-Res.apk, I get a bunch of errors, although it decodes the XML i wanted to edit, then when I try to recompile it it doesnt work. Would sticking the XML in another decompiled APK, recompiling then extracting the compiled XML and saving it into framework-res (compiled) using better zip work?
 

tommytomatoe

Inactive Recognized Developer
Dec 13, 2010
6,282
6,800
34
Knoxville USA
For some reason I can't decompile Framework-Res.apk, I get a bunch of errors, although it decodes the XML i wanted to edit, then when I try to recompile it it doesnt work. Would sticking the XML in another decompiled APK, recompiling then extracting the compiled XML and saving it into framework-res (compiled) using better zip work?

Please post the error log in pastebin.com.

And yes that method.generally works :)

Sent from my PC36100 using Tapatalk
 

CleveRuse

Senior Member
Apr 14, 2011
1,134
148
Imperial, PA
Alright tommy, I was trying to hold off on this .....u know wut, lemme read back some n make sure this post is necessary. Basically my unthemed (unthemed by me,anyway) SystemUI.apk won't recompile properly. I'm not getting any errors (not up or down) but my statusbar keeps disappearing... Hold on..........

Ok, so I need help, lol. I'm on SynergyROM for the bolt. Im trying to edit SystemUI.apk. I've successfully modded this thing a bunch of times already but am now having an impossible time. I'm simply pulling the apk from the ROM, decompiling, then recompiling. I've got both frameworks installed and I'm using the 'mod-here-multi' folder. (option 1, 3, n 5 ....well actually I don't choose 1 everytime cuz I don't see why I have to. It usually works w/out)

(Even if I install framework everytime, it doesn't matter, the stat bar still disappears)

I'm not getting any errors when I decompile cept for 'statusbar_close_on.9.png'. It gets renamed then I recompile without errors. (I've also tried fixing the patch for that .9 ....doesn't matter)

I've tried different apktool versions with no avail also. I just can't figure this thing out. I'm on Sense 3.0 (gb 2.3.4 ...I think)

Here is the SysUI.apk I'm using just invade anyone wants to try it out:

http://db.tt/brRVbLA
 
Last edited:

Top Liked Posts

  • There are no posts matching your filters.
  • 90
    [UTILITY] Android Utility - [apktool|dex2jar|smali|more][Mac & Linux][Feb13, 2012]

    Code:
    October 12. 2011.
    
     Dear AU users:
    
    I want to make a list of all the projects/themes/ROMs that AU helped make/optimize/perfect. If you all could be so kind as to post a link to your projects and I can put in op. 
    
    The goal: (a.) to demonstrate the scope of AU, and (b.) to show off all of your ideas and projects.
    
    I would appreciate your help with this.
    
    Sincerely yours,
    
    Tommy

    Hello again!

    This time, here to present you with Android Utility - a tool to discover and modify Android.


    Currently available for Mac OS X and Linux

    Windows Coming in the future.

    Code:
    Welcome back tommytomatoe,
    
      Android Utility by tommytomatoe. Version 1.0.7. Special Edition
    
    |-------------------------------||-------------------------------|
    |-------------------------------||-------------------------------|
    |         BASIC TOOLS           ||         ADVANCE TOOLS         |
    |-------------------------------||-------------------------------|
    | 1.  adb tools                 || 7.  apk Re-Engineering        |
    | 2.  keystore manager          || 8.  apk Optimization          |
    | 3.  sign apk and update.zip   || 9.  dex code utility          |
    | 4.  zipalign                  ||10.  draw9patch utilities      |
    | 5.  change-log creator        ||11.  AU ROM Utility            |
    | 6.  png swap themer           ||12.  3vodex                    |
    |-------------------------------||-------------------------------|
    |                 K. Run dsixda's Android Kitchen                |
    |----------------------------------------------------------------|
    |----------------------------------------------------------------|
    | x.  Run Installation Guide    || e.  Extras                    |
    | i.  Install Android SDK       || q.  Quit                      |
    | u.  Update Android-Utility    ||                               |
    |-------------------------------||-------------------------------|
     Select an Option:

    Install Instructions and Frequently Asked Questions in POST #3

    What AU can help you do
    Change apktool versions 1.3.1, 1.3.2, 1.4.1 on the fly
    Apk optimization
    Apk re-engineering (via apktool)
    Keystore manager
    Easy ADB
    Draw9Patch compiler/decompiler
    Zipalign
    Dex Editing (via smali and baksmali)
    Dex2Jar
    Pngout
    pngcrush
    advpng
    optipng
    Auto ODEX
    Auto dex-removal
    Android Kitchen Integration
    Much much more
    The Goal
    A tool for Mac! AU will provide the tools necessary to begin theming projects, apk modifications, optimizations, and hacks. At the end of the day, I hope this project has helped you in doing these things.

    AU can also help the user install and utilize apktool even if the user chooses not to use the Android Utility Interface.

    Note, in some instances of the utility superuser permissions must be granted (sudo). Please be aware that the changes made are reversible and are not destructive to the Host Operating System.

    Please READ Posts #1, 2, and 3 in their Entirety before proceeding.

    Feel free to post concerns and bugs. This is still in development! Thank you.
    The Goods
    Version History

    Android Utility Source Code and information

    Mac OS X Version 1.0.2 Download:
    Android Utility Mac OS X Version 1.0.2

    Linux Version 1.x.x Download:
    Android Utility Universal Installer Automated Script
    Download tar file. Open with Archive Manager. Extract au.installer. Run in terminal by double clicking on it. Follow on-screen prompts. Done. :)

    Old Versions
    Mac OS X
    Android Utility Github Direct Download Version 1.0.1
    Mirror - Full Version 1.0.1 Download
    Mac Mirror Version b-1.0.0
    Android Utility Github Direct Download Version b-1.0.0
    Android Utility Github Direct Download Version 1.0.2
    Update Package - 1.0.1 -> 1.0.2 - ONLY USE IF RUNNING VERSION 1.0.1. Extract "update" folder into root of android-utility, then run "update_script" by clicking on it.
    Patch Update 1.0.2.b - Fixes three scripts. Extract "update" folder into root of android-utility, then run "update_script" by clicking on it.
    Linux
    Android Utility Github Direct Download Version 1.0.1
    Update Package - 1.0.0 -> 1.0.1 - ONLY USE IF RUNNING VERSION 1.0.0. Extract "update" folder into root of android-utility, then run "update_script" by clicking on it.
    Android Utility Github Direct Download Version 1.0.2
    Patch Update 1.0.2.b - Fixes two scripts. Extract "update" folder into root of android-utility, then run "update_script" by clicking on it.

    Android Utility Mirror Mediafire Full Version 1.0.2 Linux
    Install Instructions and Frequently Asked Questions

    Credits

    Brut.all - apktool.jar and sound advice
    JesusFreke - baksmali.jar and smali.jar
    Stericson/JF - testsign.jar
    Google - AOSP
    Pendo - sound advice/answering my rookie questions :)
    aamikam - sound advice
    themikmik.com - Awesome sauce [jadeboy, nick, cho, et cetera :)]
    myn's thread - dougjamal, myn, lowetax, ageesm, persnlmgr, et cetera
    xda developers - Roots
    JsChiSurf - sound advice
    dsixda - sound advice
    Amon_RA - sound advice
    Igor Pavlov - 7zip
    Ardfry Imaging, LLC. - pngout
    Glenn Randers-Pehrson - pngcrush
    Andrea Mazzoleni - advpng
    Cosmin Truta - optipng
    Emmanuel Dupuy - JD-GUI
    Xclusive Rydah, Chingy, misfit - testing and ideas
    21
    Please follow these INSTRUCTIONS Carefully. The usefulness of AU depends on your attention of these instructions. Thank you.

    ### Installation ###

    *** MAC ***

    Prerequisite: JAVA (standard on Mac OS X)

    1. Download from Github.com link or direct link or mirror.
    2. Unpack the archive (tar.gx or zip) to your HOME folder.
    HOME folder is located in /Users/username. To determine HOME folder, open Terminal in Applications Drawer and type:
    open $HOME
    3. Place the unzipped folder in the finder window that opens.
    4. Rename the folder to "android-utility" - ATTENTION! CASE SENSITIVE (ie. Android-utility ≠ android-utility).
    5. Double check and make sure name of folder is "android-utility".
    6 From here, you have two options (A or B).

    # Option A
    Open in Finder the android-utility
    Look for the file "andutil"
    Double click on "andutil"
    A Terminal Window will open up with Welcome Screen (Which you will see only on initial install)
    Continue through the installation

    # Option B
    Open a Terminal Window
    Type these lines followed by ENTER key:
    cd $HOME/android-utility
    ./andutil
    Continue through the installation

    From now on, to run AU, you can either double click on the andutil icon, or simply type "andutil" in Terminal from any directory. AU adds necessary files to your PATH.

    *** Linux ***
    Prerequisite: JAVA

    If you have Java, continue. If not, run these commands (pressing ENTER key after each one) in Terminal to install Java:

    sudo add-apt-repository "deb http://archive.canonical.com/ lucid partner"
    sudo apt-get update
    sudo apt-get install sun-java6-bin sun-java6-jre
    sudo apt-get -f install
    sudo apt-get install sun-java6-bin sun-java6-jre

    1. Download from Github.com link or direct link or mirror.
    2. Unpack the archive (tar.gx or zip) to your HOME folder.
    HOME folder is located in /home/username. To determine HOME folder, open Terminal in Applications Drawer and type (for Gnome Environment):
    nautilus $HOME
    3. Place the unzipped folder in the window that opens.
    4. Rename the folder to "android-utility" - ATTENTION! CASE SENSITIVE (ie. Android-utility ≠ android-utility).
    5. Double check and make sure name of folder is "android-utility".
    6 From here, you have two options (A or B).

    # Option A
    Open in Finder the android-utility
    Look for the file "andutil"
    Double click on "andutil"
    A Terminal Window will open up with Welcome Screen (Which you will see only on initial install)
    Continue through the installation

    # Option B
    Open a Terminal Window
    Type these lines followed by ENTER key:
    cd $HOME/android-utility
    ./andutil
    Continue through the installation

    From now on, to run AU, you can either double click on the andutil icon, or simply type "andutil" in Terminal from any directory. AU adds necessary files to your PATH.
    *** Windows ***

    Coming Later.

    Frequently Asked Questions

    1. What if I get /usr/local/bin not a directory? ScreenShot
    Answer: Post #111 aka my Epiphany

    2. What if I get an error "Apk cannot be decoded"? ScreenShot
    Answer: Please be sure that your apk has no spaces in its name. Post #98

    3. Why is my new apk so much smaller than my original apk?
    Answer: Two reasons. 1. Apktool when it builds, it uses full compression. 2. The new apk has not been signed, so the signature files "META-INF" are not present.

    4. What can I use to edit xml files?
    Answer: Mac: TextEdit or TextWrangler. Linux: Gedit (my personal favorite). Windows: Notepad++

    5. Why won't my apk decompile?
    Answer: Well, multiple reasons. Let's start fresh.
    a. Have you installed proper "framework" files, ie framework-res.apk and com.htc.resources.apk? These go inside working-folder/framework-here/. Install via Option #1 in Apk re-engineering.
    b. Have you installed a new version of apktool? Sometimes that will resolve your issues.

    6. Why won't my apk recompile/build?
    Answer: Again, could be multiple reasons.
    a. Are you sure your framework files are installed?
    b. Your edits could just be bad/mistakes.
    c. Install a different version of "aapt", available in installau and the apk Re-engineering suite.

    7. I get the error: "apktool.yml does not exist".
    Answer: Please refer to questions 5 and 6. A file "apktool.yml" gets created that's used by apktool during the decode process. If that went wrong, then you won't be able to compile.

    8. AU tells me to check build_log for errors. But there is nothing there!
    Answer: Currently the build_log is funky. I will fix in the future. If it tells you to check log and nothing is there...then ignore it. There really wasn't an error. But if the log does exist, then you have an error.

    9. When will a PC Version exist?
    Answer: When I have time.

    10. When will you include latest apktool (v1.4.2)?
    Answer: AU Version 1.0.2 will include latest tools.

    11. When will smali/baksmali support be available?
    Answer: AU Version 1.0.2 will include latest tools.

    12. When will png optimization be available?
    Answer: AU Version 1.0.2 will include latest tools.

    13. Why cant't I sign my apk with test keys? They won't install!
    Answer: Using an archive manager, delete the ORIGINAL "META-INF" (aka the signature) and then sign.

    14. I get errors using Draw9Patch decompiler after using 9.png from a decompiled apk.
    Answer: Post 151

    15. What if I have a non-HTC Device, like Xperia or Sammy?
    Answer: Currently, support for those devices does not exist for the "Apk Re-Engineering", namely Option #1 Install Framework first. The tool is written to only look for "framework-res.apk" and "com.htc.resources.apk". Future versions will have support for more proprietary ROMs. More info on Post 134.

    More to come.

    Enjoy!
    17
    Version: 1.0.6

    ### Welcome to Android Utility
    # README
    # Author: Tommy Nguyen [tommytomatoe]
    # Date: October 6, 2011

    ### Update. October 06, 2011
    >Version 1.0.5
    >added adb logcat ultimate tool
    >added auto-update
    >Version 1.0.6
    >added update options

    ### Update. October 04, 2011
    >updated res_compress
    >added auto-zipalign option

    ### Update. October 04, 2011
    >added system app sign option
    >removed 7z and 7z.so

    ### Update. October 03, 2011
    >Version 1.0.3
    >updated main menu
    >added kitchen plugin

    ### Update. August 22, 2011
    >version 1.0.2
    >updated main menu
    >updated apktool (1.4.2 and 1.3.2-mod)
    >added png Optimization [pngout, pngcrush, optipng, and advpng]
    >updated installation guide
    >added support for touchwhix and sony
    >added 3vodex script capabilities
    >removed 7z in apk_compress and res_compress
    >updated installau
    >added auto-dex-removal [dexrm and dexrm2]
    >BIGGEST CHANGE: added dex2jar
    >added smali/baksmali support


    ### Update. July 14, 2011
    >version 1.0.1
    >updated sign script
    >updated main menu
    >added ROM Utility
    >added apk Optimization
    >added change-log creator
    >fixed error logging for decompiling and recompile process
    >added resources.arsc decompression

    ### Update. July 13, 2011
    >version b-1.0.0
    >redid decompile and rebuild scripts
    >added error logging to decode and rebuild
    >added filter to adb script
    >changed main menu layout

    ### Update. July 08, 2011
    >more preparation
    >added zipalign script
    >added sign apk/update.zip scripts
    >updated apktool decode mechanism, now includes META-INF extractions

    ### Update. July 05, 2011
    > preparing for initial release
    > added apktool build script
    > added draw9patch stuff

    ### Update. June 20, 2011
    > added some major changes
    > got confirmation for use of PNGOUT
    > preparing for initial release

    ### Update. June 15, 2011
    > major changes to install script
    > minor changes to andutil script
    > Version a-0.89 should be up and running soon

    ### Update. June 06, 2011
    > github repo created



    ### CREDITS
    > brut.all for apktool.jar and decode9patchPng.jar
    > jesusfreke for smali and baksmali
    > PNGOUT.EXE used with permission of Ardfry Imaging, LLC.
    > pngcrush - Copyright (C) 1998-2002,2006-2011 Glenn Randers-Pehrson
    > advpng - Andrea Mazzoleni
    > optipng - Copyright (C) 2001-2011 Cosmin Truta
    > dex2jar - pxb1...@gmail.com
    > JD-GUI - Copyright © 2008-2011 Emmanuel Dupuy
    > Igor Pavlov for 7zip
    > Google
    > Android
    > HTC
    > xda developers
    > themikmik.com
    > tommytomatoe
    5
    Just a little wittle announcement

    I will be haulting features development of Android-Utility for the time being.

    In the meantime, I will be updating the Mac OS X version to be current with the Linux version.

    Also, as a side project for school, I will attempt to write a GUI for AU with C++ using QT (I am in a C++ class at the moment). This will be a little extra credit project for me. Don't expect anything anytime soon, but I will post pics and posts if anything awesome happens. Wish me luck!

    As always, thank you for choosing android-utility for you android modding needs!
    3
    v1.1.1

    apktool 1.4.3.

    updated