[Galaxy Y GT-S5360 General] iamareebjamal:
Ultimate Editing and Theming Guide​

Preliminary Requirements:-

PC with Windows(Please avoid Windows Vista)

Java JRE or JDK

APK Multitool

framework-res.apk, SystemUI.apk, twframework-res.apk for installing

7-zip

Notepad++

Android Device for testing

Photoshop or equivalent image editing software

android-sdk(for 9 png editing)

Lots and lots of patience and mind

What this guide includes:-

1. Easiest Decompiling and Recompiling Guide *Must Read before continuing*

2. Explanation of 9 pngs and how to edit or make them

3. How to Batch edit pngs (Not 9 pngs) (Changing color, etc)

4. How to change path thickness of Pattern Lockscreen to ICS style

First Step:

Decompiling: [MUST READ]

We are assuming that you have installed JAVA, Android SDK and apk-multitool without any problems

1. Copy your mobile's framework-res.apk, SystemUI.apk and twframework-res.apk in others folder in directory where you have extracted apk-multiool

2. Open Setup.bat. Choose 2 :- Installing Framework-res

Setup.bat​

Choose 1 (framework-res.apk)

Choose 2 (twframework-res.apk)

Choose 4 (SystemUI.apk)

Window will close each time you choose an option

You will have to restart Setup.bat each time

3. Now place the apk you want to edit in place-apk-here-for-modding

4. Now open script.bat. (If you see any error, either you haven't installed JAVA and SDK[adb] or they aren't implented, Please install them properly before continuing). Click any key to continue

APK-Multitool Window​

5. You will see the above window. Now, make sure you have installed all frameworks and Compression level is set to 9.

6. Now, we will choose our project. Click 24. A list of files present in place-apk-here-for-modding will be in front of you. Choose any file

7. Click on 9. Now decompiling will be in process.

8. After it is complete, go to projects folder, you will see a folder with the name of apk you decompiled

Decompiled apk example​

If it is decompiled properly, then there will be apktool.yml file in it

9. Do your modifications. Now, you can edit .9.png files (they will be discussed later) and xml files which were uneditable first

You will notice that there will be many new folders which weren't present in compiled form of apk. These all folders are generated from a file called resources.arsc present in compiled form which is absent in decompiled form

​

Such an example is of values folder which contains crucial xml files like styles.xml, strings.xml, ids.xml, etc

Always open xml files with Notepad++, it will mark commands and syntax making it look aligned and making it easy to understand

Example of decompiled xml file ​

Also, you can edit 9 patch files also which will be changed from now on

Example:-

​

We will discuss 9 png in detail later on

10. After you have done your modifications and you are ready to recompile the app, choose 11 (Compile System APK) if you are editing System App or 12(Compile Non-System App) if you are editing other than System App

11. a) If System App:-

After some time it will ask that if you want to copy additional files other than signatures to ensure less amount of errors, then choose y

After extracting some files, it will ask you to delete files from keep folder

Simply go to keep folder,

If you edited any pngs and there are many and you are lazy enough to delete one by one, then delete the whole folder in which you edited pngs

​

If you edited any xml file, then delete that xml file AND ALSO DELETE RESOURCES.ARSC

​

Why? Because we told that values and several other folders are generated from resources.arsc while decompiling

Now, if we don't delete resources.arsc, the modification we did in values folder will be reverted to original state

After doing this, go to script.bat again and press any key to continue

​

11. b)If its not system app:

Just recompile it and sign it man through the menu in apk multitool man.

It is easy as hell. Tutorial of non-system app has been ended here :)

12. Now, you will get another apk name System_ apkname.apk

Open both apks as archives by 7-zip

​

13. Last and most important step:-

Just drop the files you edited from new apk to old apk in correct folders. By now, you may have understood that resouces.arsc INCLUDES your edited xmls

​

14. Now, the final apk is not System_apkname.apk but apkname.apk (the original file you started with). Push it and enjoy :)

9 PNG Discussion

These are special types of pngs that can be stretched to fit the need of program or different scenarios or cases. It contains 1 pixel lines on each border of different lengths for different things

As told above, we can't edit 9 png in compiled form as it will lose these lines which define its properties. So, we first need to decompile apk in order to edit 9 pngs

​

So, after decompiling apk, open 9 png in Photoshop and select the part inside that 1 px border and edit anything you want (Hue, Saturation, Bevel, Emboss, ANYTHING)

​

Now save it (save it as a normal png and then rename it as .9.png because photoshop doesn't recognise 9 png extension and image will loose its RGB format)

Explanation of 9 png:-

​

You can read this for more information

If you have doubt that you have gone wrong somewhere or you have made a new png from scratch and want to test if it is correct or not:

(Check all 9 png files you edit as they can cause Force Closes or bootloops)

Go to folder where you extracted android-sdk and go to tools folder and open draw9patch.bat

​

A window like this will open up:-

​

Drop you 9 png here

A new window will open with you 9 png on it

Tick on show bad patches

​

If you see red rectangles, you have a bad 9 patch image. You will need to delete or add those lines in png to remove all red boxes. If you want to delete, press Shift and start moving cursor over lines you want to delete. You can choose method of hit and trial to remove all rectangles and move the lower scale to see how your image size is adjusted

Or you can do what I do:

1. Remove all lines

2. Add single dot on top centre and left centre border of image (That can be taken as stretchable area)

3. Add lines on right and bottom of image where you want to fill content. Now, click on Show Content

​

The purple area you see in image is the content area (Text will be filled there. Eg:- Popup Menu)

4. Now, you can adjust these lines acoording to your need that what you want for stretchable area and content area until an unless there comes an red triangle

5. When it is done. Save the file. DONE

Easy, isn't it?

That's what theming is

Batch Editing pngs in Photoshop

Well the scenario is you have 200 pngs and you want to change their color, hue, add effect to them, etc. Definitely not worth the time you will spent doing this one by one. So, here, I will cover how to batch apply same edits on to your infinite pngs. Here, I am taking example of changing color of battery png from green to purple, you can apply any attribute to your image in the same way. I repeat it is not for .9.png files. Read above guide for reference

Let's start

1. First copy all your pngs you need to edit in a separate folder. I have made a folder named Battery Base and pasted my all pngs of battery there.

​

Now create another folder where your edited pngs will be saved. For eg:- Battery Done. (Don't create it inside Battery Base folder)

2. Open Adobe Photoshop and Choose Window>Actions or Alt+F9

​

3. Click on the note like file (Create new Action)

​

Rename it to anything you want . I have chosen Battery_color

​

Then click on Record. Now, you will see that red circle is enabled and now everything you do on image will be recorded and will be applied on each image.

​

4. Now, do this very carefully, don't miss any step.

We will do every thing that we want Photoshop to do with each file we want to edit.

a) So, first we want Photoshop to open the image. So , click on Open and choose any png from Battery Base folder (Choose a file with more color so that you know what color exactly your file will be after editing. That is why I chose 90 percent battery here).

b) Now, after opening, we want to change Color of png from green to purple. So, choose Image>Adjustment>Hue and Saturation or Ctrl+U

​

A dialog box with 3 sliders will appear. Move upper slider to change color. You can move other slider to change saturation and brightness if you want. Now, if you got it right, click on OK.

Every step of yours is being recorded, so don't do unnecessary stuff you don't want to do on other images. Nonetheless, if you have done it, then Drop down the Battery Base Action in action palette and you will see your every action there, If you want to delete any action , you can delete it from there. You can also add any action before pre completed action by clicking above that action and performing it.

Now, you can do anything you want to be done on your rest of pngs.

c) Now, we want Photoshop to save this png to carry on working on others. So, Go to File>Save as... and save it as a png in Battery Done folder. Photoshop will ask you to choose, so choose smallest compression and no interlace.

​

d) Image is saved but we also want Photoshop to close the png so that it does not open 200 tabs for editing 200 pngs. So, click on close (Small cross on title bar of png). If, it asks that do you want to save changes to png . Say no, because if you say yes, the png in Battery Base will be changes and when batch processing is done, that png in Battery Done will be of different color that all others.And also, your all green pngs in Battery Base folder will turn purple too. But we want purple images in Battery Done and green in Battery Base.

5. Now, we hae done what we want, so, we will stop recording the Action. Click on that square in Actions Palette.

​

6. Fun Starts. Now we will do the batch processing.

Go to File>Automate>Batch

​

In the dialog box, Choose the action to be Battery_Color (or obiviously any action you created)

Source folder: Battery Base

Destination Folder: Battery Done

Tick both Override Action 'Open' commands and Override Action 'Save as' commands

​

Click on OK. Sit back for 3 to 5 minutes(204 pngs) and TADA :)

​

You can apply any action in same way. Such as bevel, glossy, pale, etc to innumerous amount of pngs

Guide to change path thickness of Pattern Lockscreen to ICS Style​

Guide to changing path thickness of Pattern Lockscreen to ICS style​

I wandered places searching this off. I found some traces in direction of my destiny but none of them worked fully correctly

So, as stated, I searched a lot for this mod and came face to face with failures and smali errors. So, I had to figure it out myself some modification to do in it to make it work.

Note: IT is not COMPLETELY my mod but I have done modifications in it to make it work. This is based on a guide for Froyo outside of XDA.

Pre-Requisites:

1. PC with Java JDK or JRE

2. Deodexed ROM

3. 7-Zip

4. classes.dex decompiling tool

5. Notepad++

6. Patience

7. Carefulness for editing smali files

Let's Start

1. First we would have to decompile classes.dex inside framework.jar

For that, you can use my Tool ROM Tool v2

First using 7zip, Right click on your framework.jar and open it as archive and drag and drop classes.dex in input folder of the tool

(Note: If you don't have classes.dex in framework.jar [only META-INF and preloaded-classes.dex], then your framework isn't deodexed)

Now, open Script.bat and choose 1 (Decompile classes.dex)

2. Now, we will make the changes. Go to decompiled folder and go to \classout\com\android\internal\widget and open LockPatternView.smali in Notepad++

Search for mDiameterFactor:F

[Ctrl+F]​

See the code above it.

It should be like this:-

const[COLOR="Red"]/high16[/COLOR] v2, 0x3f00

If it is, then you will have to remove red part /high 16

Because it will not allow the change of code we will be doing which will have a different hexadecimal value which will not be supported till this code is in effect

Now, it will look like this:-

const v2, 0x[COLOR="Red"]3f00[/COLOR]

Now, we will change the thickness value 3f00 to 3dcccccd

Final code will look like this

const v2, 0x3dcccccd

Save it

I am attaching final and before smali for comparison below.

View attachment 1936707

(Note: If you don't have /high 16, it's good , then just just change the value and save)

3. Go to Script.bat again and choose 2 (Recompile classes.dex) and after it's done, you will get classes.dex

Drop it in framework.jar

4. Push framewotk.jar in /system/framework

Eg:

Copy it in platform-tools folder of android SDK and type following with pressing Enter after each command

adb remount
adb push framework.jar /system/framework/
adb shell chmod 644 /system/framework/framework.jar
adb shell killall system_sever

Last command will Hot Reboot your phone to apply changes. It is fast and better than rebooting phone.

5. Enjoy

Screenshots

Before

After

Credits​

A member from other forum to answer a question to other member of that forum :p

Google for letting me search somethings

Samsung Galaxy Ace s5830i members for supporting me so much

This is a work in progress.

Will add more things soon

Credits:

[MENTION=4739077]d3cka[/MENTION] for teaching best abour 9 pngs

[MENTION=4503217]deathnotice01[/MENTION] for helping me

Miscellaneous Google and xda posts