Apk Manager 4.9 - Makes Modifying Ur Apk A Breeze (Windows/Linux)

Do you find the latest beta functional ?

  • Yes

    Votes: 1,105 74.6%
  • No

    Votes: 376 25.4%

  • Total voters
    1,481
Search This thread

Daneshm90

Retired Recognized Developer
Jun 1, 2009
3,332
662
So i have written a simple script to ease the process of editing apks. Got a lot of downloads so thought its in demand :rolleyes:

Whether you're doing basic image editing or editing the smali or xml files, on average u have to use (Brut.all or JF's smali/baksmali) awesome tool to extract the apk, edit it, then sign the apk and then adb push/install it. This process is quite tiresome if you are testing a method that needs fine tweaking.

This script should make the process a LOT smoother.
Theres an option of compiling/signing/installing all in one step :)

Thanks:
Goes to Brut.all for his awesome tool.
Goes to JF for ofcourse, smali/baksmali
Goes to farmatito for porting this script to linux

Features:
- Extract, Zip apk's.
- Optimize pngs (ignores .9.pngs)
- Zipalign apks
- Sign apks
- Push to specific location on phone
- Incorporates brut.all's apktool
- Pull apk from phone into modding environment.
- Batch optimize apk (Zipalign,optipng,or both)
- Quick sign an apk (Batch mode supported)
- Batch Ogg optimization
- Compression level selector (monitor status above menu)
- Batch install apk from script (option 16)
- Logging on/off has been removed. Instead a log.txt is created which logs the activities of the script organized using time/date headers
- User can change the max java heap size (only use if certain large apks get stuck when decompiling/compiling apks) (Option 19)
- Improved syntax of questions/answers
- Error detection. Checks if error occured anytime u perform a task, and reports it
- Read log (Option 20)
- U can now set this script as ur default application for apks. When u do, if u double click any apk it will install it for u.
- Supports batch installation, so if u drag multiple apks into the script (not while its running) it will install them all for u. U can ofcourse drag a single apk as well
- Added framework dependent decompiling (For non propietary rom apks). (Option 10). Checks whether the dependee apk u selected is correct.
- Allows multiple projects to be modified, switch to and from.
- Allows to modify system apk's using apktool but ensures maximum compatibility in terms of signature / manifest.xml
- Stuff i forgot i guess :p

Instructions (Windows):
- Place apk in appropriate folder (Any filename will work, if running for first time folders will not be there, you must run and then the folders will be created)
- Run script
- Minimize the script
- Edit files inside the project folder
- Maximize the script

Instructions (Linux):
- Place apk in appropriate folder (Any filename will work, if running for first time folders will not be there, you must run and then the folders will be created)
- Open terminal and change-directory to apkmanager (Easiest way is to type "cd ")
- Chmod 755 Script.sh
- Chmod 755 all files apps inside other folder (thanks for the tip bkmo ;) )
- Run script by typing ./Script.sh
- Minimize the script
- Edit files inside the out folder
- Maximize the script

Requirements:
Java
Adb

Future Improvements:
- Manage multiple simultaneous apk edits (choose which apk to extract/build)
- Option to optimize the apks
- Option to adb push to user defined location
- Other stuff i dont know yet




Got problems ?

1. Make sure your path has no spaces
2. Your filename has no wierd characters
3. Java/adb are in your path
4. It's not a proprietary rom's apk (aka Sense,Motorola,Samsung) (If u are, then use option 11 and drag the required framework, eg com.htc.resources, twframework-res...etc)
5. It's not a themed apk (if it is, expect .9 png errors, use as close to stock as possible)
6. Look at the log to know whats happening
7. If all else fails, post as much info as possible and we will try to assist you.

MOD EDIT:
New DL link from this post
http://apkmultitool.com
 
Last edited by a moderator:

Brut.all

Inactive Recognized Developer
Jul 27, 2009
1,471
353
Nice :)

As you probably know, I want to add signing and installing functionality to apktool. But I don't plan to make any kind of GUI for it, so such wrapper is a very good thing for many users, thanks :)

What is "Option to optimize the apks"?
 

Daneshm90

Retired Recognized Developer
Jun 1, 2009
3,332
662
I was thinking of incorporating the script "apkopt" it was basically using optipng to optimize the png's and then used zip align on the apks. Thanks btw, this tool wudnt exist without ur awesome script :)

I just did this so ppl would stop asking questions like "How do i change this/that in an app"

Here this is wht im talking about Link
 
Last edited:

Daneshm90

Retired Recognized Developer
Jun 1, 2009
3,332
662
Re: Apk Manager 1.0 - Makes Modifying Ur Apk A Breeze

my script currently does not optimize apks. it will be in the upcoming updates and yea prolly when ill implement itll avoid .9.pngs lol
 
  • Like
Reactions: Thailandian

Daneshm90

Retired Recognized Developer
Jun 1, 2009
3,332
662
I have already incorporated "adb push" into the script.
Aside from adding an option to optimize the apks, is there anything else you guys think would make this script easier to use ?
Im really targetting those ppl who overcomplicate the simple process of editing apks. Any tips would be appreciated.
 
  • Like
Reactions: Thailandian

mattv888

Senior Member
Aug 23, 2009
109
0
Great script man, it works flawlessly. You may just wanna edit your post #1 rather than continuously bumping with new posts for every update. I'm sure a mod won't be too pleased with that ;)
 

Xlythe

Senior Member
Feb 9, 2010
314
237
Waterloo
I'm getting the
'java' is not recognized as an internal or external command, operable program or batch file​
message when I attempt to sign an apk. I tried switching the PATH in Environment Variables so that it's pointing to my Java bin folder, but then I just end up with
java.io.FileNotFoundException: ..\place-apk-here\repackaged-unsigned.apk <The system cannot find the file specified>
at java.util.zip.ZipFile.open<Native Method>
at java.util.zip.ZipFile.<init><Unknown Source>
at java.util.zip.ZipFile.<init><Unknown Source>
at java.util.zip.ZipFile.<init><Unknown Source>
at com.android.signapk.SignApk.main<SignApk.java:320>
Could Not Find C:\ApkManager2.0\place-apk-here\../place-apk-here/repackaged-unsigned.apk​
Help? :]
 

Daneshm90

Retired Recognized Developer
Jun 1, 2009
3,332
662
What app are you trying to edit ? also are you editing pngs only or code editing ?

Hop on Here im helping someone out so ill help u 2 :)
 

anomalous3

Senior Member
Jan 22, 2010
420
14
Phoenix
There's a lot of things in /system that benefit from the optimized .pngs. Vending.apk, for instance, shrunk to half the size and runs a bit quicker and smoother now. Even framework-res.apk enjoyed the optimization. Paid apps, on the other hand, don't seem to fare so well; perhaps they check the md5sum of the app or something.
 
Last edited:

Daneshm90

Retired Recognized Developer
Jun 1, 2009
3,332
662
Yea png optimization works for almost all apks, zipalign on the other hand as i recall doesnt work on certain system apks such as settings.apk. Im prolly gonna incorporate apkopt's script into this which would allow to optimize a folder full of apks. As for paid apps not being optimized, a lot of dev already do their part on making the apk as small as possible, so perhaps thats the case.
 

anomalous3

Senior Member
Jan 22, 2010
420
14
Phoenix
hmm, after trying a couple of unpaid apps, it seems that perhaps the testkeys aren't compatible with my build. For any signed app, I get an error "Failure [INSTALL_FAILED_UPDATE_INCOMPATIBLE]"
 

Daneshm90

Retired Recognized Developer
Jun 1, 2009
3,332
662
Yes when u modify a non system apk, they need to be resigned, and you cannot resign it with same key as dev cuz u dont know it :) hence anytime u modify an app, u must uninstall it, install the modded version, and from then on any change u make u dont have to uninstall as the keys will match
 

bkmo

Senior Member
Jun 25, 2008
1,890
226
10° 5' 59" North, 84° 16' 84" West
Getting this on a zipalign. The file is there but it is repackaged-unsigned.apk and throws this error:


Please make your decision: 5
Unable to open 'E:\ApkManager\place-apk-here\repackaged-signed.apk' as zip archi
ve
Could Not Find E:\ApkManager\place-apk-here\repackaged-signed.apk
The system cannot find the file specified.

Nevermind....looks like it is by design that it tries both signed and unsigned and throws the error on the file that does not exist. It's just I did not see any zipalign output
 
Last edited:

hurtem

Member
May 7, 2008
31
0
having an issue that when I go to resign an apk the file deletes after running the script.. am I missing something here?
 

Top Liked Posts

  • There are no posts matching your filters.
  • 219
    So i have written a simple script to ease the process of editing apks. Got a lot of downloads so thought its in demand :rolleyes:

    Whether you're doing basic image editing or editing the smali or xml files, on average u have to use (Brut.all or JF's smali/baksmali) awesome tool to extract the apk, edit it, then sign the apk and then adb push/install it. This process is quite tiresome if you are testing a method that needs fine tweaking.

    This script should make the process a LOT smoother.
    Theres an option of compiling/signing/installing all in one step :)

    Thanks:
    Goes to Brut.all for his awesome tool.
    Goes to JF for ofcourse, smali/baksmali
    Goes to farmatito for porting this script to linux

    Features:
    - Extract, Zip apk's.
    - Optimize pngs (ignores .9.pngs)
    - Zipalign apks
    - Sign apks
    - Push to specific location on phone
    - Incorporates brut.all's apktool
    - Pull apk from phone into modding environment.
    - Batch optimize apk (Zipalign,optipng,or both)
    - Quick sign an apk (Batch mode supported)
    - Batch Ogg optimization
    - Compression level selector (monitor status above menu)
    - Batch install apk from script (option 16)
    - Logging on/off has been removed. Instead a log.txt is created which logs the activities of the script organized using time/date headers
    - User can change the max java heap size (only use if certain large apks get stuck when decompiling/compiling apks) (Option 19)
    - Improved syntax of questions/answers
    - Error detection. Checks if error occured anytime u perform a task, and reports it
    - Read log (Option 20)
    - U can now set this script as ur default application for apks. When u do, if u double click any apk it will install it for u.
    - Supports batch installation, so if u drag multiple apks into the script (not while its running) it will install them all for u. U can ofcourse drag a single apk as well
    - Added framework dependent decompiling (For non propietary rom apks). (Option 10). Checks whether the dependee apk u selected is correct.
    - Allows multiple projects to be modified, switch to and from.
    - Allows to modify system apk's using apktool but ensures maximum compatibility in terms of signature / manifest.xml
    - Stuff i forgot i guess :p

    Instructions (Windows):
    - Place apk in appropriate folder (Any filename will work, if running for first time folders will not be there, you must run and then the folders will be created)
    - Run script
    - Minimize the script
    - Edit files inside the project folder
    - Maximize the script

    Instructions (Linux):
    - Place apk in appropriate folder (Any filename will work, if running for first time folders will not be there, you must run and then the folders will be created)
    - Open terminal and change-directory to apkmanager (Easiest way is to type "cd ")
    - Chmod 755 Script.sh
    - Chmod 755 all files apps inside other folder (thanks for the tip bkmo ;) )
    - Run script by typing ./Script.sh
    - Minimize the script
    - Edit files inside the out folder
    - Maximize the script

    Requirements:
    Java
    Adb

    Future Improvements:
    - Manage multiple simultaneous apk edits (choose which apk to extract/build)
    - Option to optimize the apks
    - Option to adb push to user defined location
    - Other stuff i dont know yet




    Got problems ?

    1. Make sure your path has no spaces
    2. Your filename has no wierd characters
    3. Java/adb are in your path
    4. It's not a proprietary rom's apk (aka Sense,Motorola,Samsung) (If u are, then use option 11 and drag the required framework, eg com.htc.resources, twframework-res...etc)
    5. It's not a themed apk (if it is, expect .9 png errors, use as close to stock as possible)
    6. Look at the log to know whats happening
    7. If all else fails, post as much info as possible and we will try to assist you.

    MOD EDIT:
    New DL link from this post
    http://apkmultitool.com
    18
    Hi Download link dont work is there anything you can do to upload some other website or mirrior plzzz.:confused:

    New website http://apkmultitool.com
    7
    No lol i have windows 7, java is just not in ur path.

    Right click my computer, click properties, advanced settings, environment variables, in bottom window scroll to PATH click and edit it, at the end add ;<path to ur bin folder of java>

    so mine looks like
    c:\Program Files (x86)\NVIDIA Corporation\PhysX\Common;%SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem;%SYSTEMROOT%\System32\WindowsPowerShell\v1.0\;C:\Program Files\Droid Explorer\SDK\tools;C:\Program Files (x86)\Java\jre6\bin;C:\Program Files (x86)\QuickTime\QTSystem\
    4
    For people having the:


    The program sox is missing or is not in your PATH,
    please install it or fix your PATH variable

    problem on linux, here's the fix:

    open Ubuntu Software Center and search "sox" without the quotes

    install it

    problem solved. If OP wants to update, it'll help a LOT of people out ;)