[Sprint Samsung Galaxy S III] zalooa:
Welcome back everyone,

We are in knee deep waters now, probably committed and ready to get going on the last of set of tools that need to do some serious modding.

If you are not up to speed, please go to Part I, Part II and Part III.

Get up to speed on those tutorials first before we continue. Remember, this is not Call of Duty, this isn't even Star Wars, this War of the MegaZord 5. We are in the serious stretch of the basics of modding the final frontier son!

Our target today is to utilize the Smali and BakSmali tools.

As you recall from the previous tutorials, the Smali and Baksmali have been put in our very specific folder

C:\other\Smali\

So, what does the Smali/Baksmali code need to do for it to work? We will need a JAR file. The JAR is a java archive file. You can also open those files with 7-zip, in each of the JAR files we will look at has a classes.dex file which we will need

Each Jar file in our

MD4_Version_1\system\framework\

Will have a classes.dex file inside, since the name is the same for all files, this is very tricky to manage unless you are organized so remember that each classes.dex file you take out, you remember where the new one needs to go.

So, lets open the following file in 7-zip,

android.policy.jar

Take the classes.dex file and place it in the folder where the Smali.jar file is and Baksmali.jar files are.

Now open a command prompt to that location and execute the following code,

C:\other\Smali>java -jar baksmali.jar -o output classes.dex

You will not receive feedback from this command. Do not stress if it looks like nothing happened, of course coincidentally, a new folder has been created in our folder called output(You can name it whatever you want just trying to keep it simple.

This folder will have a de-compiled set of

.smali code

that will allow us to modify very critical settings and make amazing mods.

The good news is we have the technology now we need the....wait wrong show,

We have the ability to take any classes.dex file and modify it and we can recompile it and execute a mod perfectly.

To recompile, we will need to execute the following code

C:\other\Smali>java -jar smali.jar -o newclasses.dex output

This will create a new file called newclasses.dex

We will need to place it inside the android.policy.jar

Of course, take the file and place it on your desktop, rename it to classes.dex and place it in the android.policy.jar and your mods are ready to go.

So that's all you need to do because the signatures cannot be messed with so this is the best way to do it.

Now, to the modding part, we have the tools to do all the mods you can set your furry little thoughts on.

learned how to implement the following with all of the code belonging to their expert makers.

Removed increasing ringtone

Call Record built into phone

Quick Unlock implemented(only reason I got into this ROM modifying because it annoyed me to press OK button to unlock, only thing iPhone got right...lol android wins)

Sounds modified

Default Sounds Set

Free Tethering working

1 percent battery

Removed apps from system/app to reduce clutter

Modified default wallpapers from Samsung

Phone contacts Theming

4 in 1 reboot enabled

No Sound on Camera

TouchWiz default layout

Seems basic enough but it is all I need, sure there are much fancier things to add, but these tutorials are about adding only what you want.

If all of these sound like you need them or want them, I can go into how to implement these. Not sure what the level of interest is at this point from people as these are not terribly tricky but sometimes, the code made from the original developer does not match exactly and then you have to find it and implement it.

Of course, this comes at a great cost to time, as I was working one each mod, I made 17 versions had to back track to version 12 as a mod I implemented had a bug I did not know exists until I did a fresh install.

This happens a lot by the way. The other day, I had Bluetooth on and connected to headset, a call came through, answered it, switched from headset to speaker and phone just turned off, I am sure there is another bug from another thing in another place that I overlooked.

My point is, making any mod will require a LOT of time. I installed each ROM after that glitch to make sure everything worked. I used Titanium Backup to assist me in my endeavor but it was a hassle to change all my settings to what I needed(there is a way to set your settings any way you want as well while working in the ROM)

The thing is, each developer here takes a great deal of time and effort to do this and sure they have the expertise but it was because they got down in the nitty gritty and found a way to make it happen. They also usually do it out of their good will and hearts(well most of the ones I know). It has to be the most inspiring thing ever to find a group of people that are not doing this to make money but they take time out of their lives and help us Nooblets out. I mean it is our super phone we want to modify right? And I want to say thanks to them. I want to say thanks to everyone who I mooched off their code for to get what I need, because without you, I would be on Google doing something un

pron

ductive. Luckily, things started to work and mods made more sense and it is not so intimidating as it once was...of course several hundred flashes later, it better make more sense.

Thanks for everyone who reads this and gains something. This concludes the part of the tutorial I set out to accomplish and that was to get all the tools needed to make anyone a ROM builder(at least modifier).

Team Venum thanks for your great support as always you guys rock, I dabbled with their ROMs when I had an issue with exchange email

The MOAR team who helped me understand ROM structure for their crazy ROM.

loserskater for his quick unlock code which was by far amazing, I still look through the code and think he made it up on the spot.

lmike6453 who got me closer to figuring out loserskater's epic code.

So many more to thank but cant think of where all my research is, guess I should have listened to my own advice and stayed organized.