[ROOT][GUIDE][MAC OS X] Root and Flash Sony Xperia S Android 4.0.4 on Mac OS X
DISCLAIMER: THIS CAN OR WILL VOID YOUR WARRANTY, I WILL NOT BE RESPONSIBLE IF ANYTHING GOES WRONG. BACKUP ALL DATA THAT IS IMPORTANT BECAUSE YOU CAN OR WILL LOSE IT.
Once you have the steps together Rooting and Flashing Sony Xperia S on Android 4.0.4 is quite straightforward. Most interesting, this all works on Mac OS X 10.8 Mountain Lion.
You DO NOT need to unlock the bootloader.
You DO NOT need a prerooted image.
You CAN ROOT if you want.
You CAN FLASH a stock Rom if you want, some customised (but not all).
Download FlashTool for Mac
Download at: Flashtool -- Xperia devices flashing
Make sure MacPorts and LibUSB is installed properly
Download MacPorts at: The MacPorts Project -- Home
3.a (OPTIONAL: USE ONLY IF YOU WANT TO ROOT)
Clarification: You can start your phone normally with it normally running, just make sure USB Debugging is "On" and Unknown Sources is "Allowed".
Connect USB Cable
To Root: Click the unlock icon in the "Toolbar".
Follow instructions (basically click the "Restore" button on the ~phone~ screen)
CONGRATULATIONS. You are now Rooted. (adbrestore exploit)
Note: This exploit may be lost when going to Android 4.1 in the future.
3.b (OPTIONAL: USE ONLY IF YOU WANT TO FLASH STOCK ROM).
To Flash: Click the lightning icon in the "Toolbar"
Use correct FTF file: Download from: [ROOT&MORE]Xperia 2012 line Flashtool + prerooted system.img + Sony fw FTF + addons - xda-developers
This can be confusing for new users. I downloaded "LT26i_6.1.A.2.45_GENERIC NL.ftf"
NOTE: Instead of "Back Button" for Xperia S press and hold Volume Down then connect USB cable.
You will go into Flashmode and it will wipe phone and put the ROM you chose.
Clarification: If you want to Root after this you must reboot your phone, go through the setup, enable USB Debugging "On" and then set Unknown Sources to "Allowed". Then while phone is running normally you can do the Root steps above (3a).
Follow up: You can now Disable a lot of bloatware or otherwise Uninstall through various methods.