[G1 Android Development] Daneshm90:
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

[YOUTUBE]<<object width="640" height="385"><param name="movie" value="http://www.youtube.com/v/dkQVXeAOdWo&hl=en_US&fs=1"></param><param name="allowFullScreen" value="true"></param><param name="allowscriptaccess" value="always"></param><embed src="http://www.youtube.com/v/dkQVXeAOdWo&hl=en_US&fs=1" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="640" height="385"></embed></object>[/YOUTUBE]

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