Pages

Monday 23 January 2012

A Beginner's Guide to Rooting, Part 1: Turboboost Your Android Smartphone


NOTE: Whilst this blog post contains steps on how to achieve things that are possible on most android phones, this guide is based on the Xperia 2011 range, specifically the Xperia arc S. The guides should also be applicable to the other Xperia 2011 range devices, however may not be applicable to other devices.

________________________________



Over the years since Android's initial release, I've often found one of the most common controversies has been the subject of rooting. There is a lot of fear involved in rooting, any possible damages, and what it actually means to have a rooted phone. Whilst I pose no regularity, I aim to post several blog posts not only to answer these questions, but also to show you exactly what you can achieve through having a rooted phone.

A word to begin with, these posts will be quite long. This is because they are covering several different areas, be-it tutorials or commonly asked questions for rest assurance. I don't expect you to sit here and read through the whole post, however please read the full section if it is a tutorial, to prevent you from missing out on a required step (missing a required step won't damage your phone, it'll just mean your phone still isn't rooted). It is also a beginner's guide, which goes much more in depth from the vague instructions you may find in other places.

In part 1, I will be giving you a step by step guide to 'turbo-boosting' your Android. Firstly I want to point out that I take very little credit here - I didn't create any of the necessary tools required to do this, and ultimately, I too followed a guide to get this working. What this tutorial does aim to to do however, is to entirely simplify the process of rooting, and other activities associated with rooting. For original guides that I've used, see the source links of each 'Beginner's Guide' post.

Section 1: Busting the Myths Behind Rooting

Here are some common things I hear floating around when people are discussing rooting, and my responses to those comments. You do not need to read these before proceeding with either of the tutorials, however if you are having douts, hopefully this section will put those to rest:

1. Rooting is really dangerous and will brick my phone
This is very much a myth. Rooting CAN brick your phone, but the likelihood is that it won't. This would mainly apply to those who are trying to root a new model device that has never been rooted before using methods that haven't been tested, or developers who are trying to create new root methods. Those are also the guys who know how to get out of such sittuations. Whilst they are rooting their phones just as you are also rooting your phones, what they are doing is a totally different process, and far more risky. Those who are using a tried and tested root method such as the one I am going to demonstrate to you, so long as you use common sense (i.e. Don't pull the cable out half way through), and follow the instructions provided, then you'll have a hard time trying to create a problematic experience.

2. Rooting my phone will void my warrenty
This is almost correct, but not quite. Root is reversible, and, whilst warrenty is not applicable to rooted devices, rooting itself does not void the warrenty. Imagine a lottery ticket. Write the word 'void' across it, and you'll not be able to claim your prize, but write it in pencil and then rub it out (don't actually try this as it's just an example, rubbing out pencilled words sometimes still leaves traces which rooting doesn't) and the ticket no longer voided. The same applies to a rooted device. If you do come across any problems and need to send it for repair, simply unroot it. And if you are unable to get to the position to unroot the phone, chances are without fixing the problem in the process, the repair guys won't be able to get to the position to see if the phone is rooted. Not that I could say for certain, but I would also take a guess at saying they don't check for root as often as you may think. Again, I could be wrong there...
 
3. Rooting has lost it's benefits in newer android releases
True - ish. Rooting has served many purposes in the past, and as time goes on, the benefits of rooting are being made available to non-rooted devices. A good example of this is the inclussion of the ability to remove stock apps in Android 4.0. But whilst benefits are being closed off, new ones are being opened. A good example of this would be the script I am going to walk through further below, which resolves the problem with home screen redrawing. This issue wasn't present in earlier versions of android.

4. Rooting will give me problems using some of the features of my phone
If you let it, yes. Rooting doesn't do much to your phone, really. It 'unlocks' areas of the phone's file system which would otherwise be locked. An SD card will have a lock switch. If my memory serves me, old tape cassettes did too. Imagine rooting as 'flicking the switch'


NOTE ABOUT GOOGLE MAPS: As part of rooting the device using the method below, you may or may not loose google maps. This is NOT because rooting does loads of damage, etc. This is due to making sure there are enough resources on the phone to proceed. My first comment on this is that I have rooted my phones using this method with very little free space and have not lost maps so this would only be under severe circumstances, but secondly, google maps can always be reinstalled from the market place at a later stage.

Section 2: Tutorial - Rooting Your Android

Useful list of tried & tested devices: http://captaindbg.com/zergrush/

So as previously mentioned, these guides will cover many different areas of what you can achieve through rooting on a basic level, be-it speeding up your phone, freeing up space, installing firmware early (root not required, but still VERY useful!), etc. Fittingly, the first tutorial is to root your phone. After all, you'll need to do this before you can do anything else.

The method I use is called 'ZergRush'. Don't let fancy names confuse you, this is just for information purposes only. Each root method ultimately does the same thing - it roots your phone. This one requires your phone to be connected with your USB cable so make sure to have that handy. The majority of the process will literally do itself.

1. You will need to obtain a copy of ZergRush. This has been built independently by a cummunity developer called DooMLoRD who has chosen to host the file over at XDA-Developers. For your convenience, I have included the link to the file here, however I urge you to create an account with XDA-Developers at least to say thank you once you have rooted your device, but also because beyond what you get here, XDA-Developers contains a wealth of knowledge and is a great learning resource.
Appreciation thread: http://forum.xda-developers.com/showthread.php?t=1320350
ZergRush: http://forum.xda-developers.com/attachment.php?attachmentid=841876&d=1325678726

2. The file will be a very quick download. It will download as a .zip, so extract this to a folder on your desktop (the desktop is my preference, though you may choose otherwise). Extracting varies from software to software however if you use winrar like myself, just right click on the file, select "extract files..." and choose a location to extract them to.

3. Now go to the folder where you extracted the files. Run the file 'runme.bat' You will see the following screen. Again, don't let this scare you, the whole process is pretty automatic.


ADB Drivers: You will see this ask you to install the ADB drivers. Between an Xperia arc, arc S, Xperia mini pro and 3 PCs, I've never had to do this, and yet googling it will never give you a straight forward answer.

You don't NEED to know this, but it may interest you: To my understanding and maybe someone more knowledgeable can correct me on this, the adb drivers will install themselves when placing the phone in debugging mode (a step coming up soon) if you use a standard firmware, however if you use a customised firmware then you may not have the necessary files install automatically. This is on a whole different level, completely seperate from rooting, and as I say, not something you really need to know.

4. On your phone, press the 'Menu' button. This is a hardware button that has an icon that looks like a long horizontal line on top of 3 shorter horizontal lines. Now press Settings, then go into Applications, and then development. Tick USB Debugging, and Stay Awake. USB Debugging is only required for the root process, and can be dissabled after you have rooted. Some tutorials for doing other things may ask you to put it back on though. Stay Awake is my personal preference, and just means the screen never goes off whilst the phone is on charge.

Press the 'back' button (the hardware key that has an arrow pointing left) and tick 'Unknown Sources'.


5. Now connect your phone to your PC. If you had already done so, selecting 'USB Debugging' in the stage above will have prompted the PC to automatically start installing the correct drivers. If you are just connecting the phone to the PC now, doing so will prompt the PC to automatically begin the driver installation. Again, don't let terminology get in your way, just let it do it's thing. You will see a notification informing you of this, by your system tray (bottom right corner of your PC, where your clock sits).

6. Everything is set. Now, with the 'runme.bat' program open, press space on your keyboard. The process will begin. Lots of text will go up on the command prompt. Don't worry if you occassionally see the word 'Failed' appear, this is fine. The program will attempt to do certain things multiple times, so just let it do so. It will take a few minutes at most, and at the end will read the lines:

ALL DONE!!!
Press any key to continue...

Your phone will then reboot.

Congratulations on rooting your phone.

Don't forget to go and thank DooMLoRD.

Section 3: Tutorial - SUPERCHARGE!!!!!

ok, so now you have a rooted phone. The last section for part 1, I will explain how to 'SuperCharge' your Xperia. Again, this should work on most rooted phones, however this guide is optimised for 'Xperia' phones. Unfortunately I can only say this guide is optimised for the standard Xperia launcher, so sorry 'Four Corners' guys, you can try it, but I can't guarantee anything. The official source however, does say this works on ALL rooted android phones, which is good news :-)

I have however never found the need to run this with a mini Xperia.

Ultimately by SuperCharging your phone, you will have a much smoother experience, with much less 'redraws' on the homescreen. A redraw occurs when the homescreen hasn't been used for a while, and the phone has started to run out of memory. The result of this is the home screen is stopped until you next use it, meaning your widgets and layout take a long time to come back, bit by bit. If you've experienced this even just a few times, you'll probably want to try this out.

This tutorial doesn't necessarily require a USB cable, however I have written it with a USB cable in mind in order to transfer a file across to the device. If you have any other method you prefer of transfering files to your device's storage card, by all means feel free to use it.

You will need to install some software off the market first. The majority of what we do will be done with 'ScriptManager', which you can get from here: https://market.android.com/details?id=os.tools.scriptmanager&feature=search_result#?t=W251bGwsMSwxLDEsIm9zLnRvb2xzLnNjcmlwdG1hbmFnZXIiXQ..

You will also need the 'BusyBox Installer' which you can get from here: https://market.android.com/details?id=com.jrummy.busybox.installer&feature=search_result#?t=W251bGwsMSwxLDEsImNvbS5qcnVtbXkuYnVzeWJveC5pbnN0YWxsZXIiXQ..

AGAIN..... Don't let names and terminology confuse you. I had to get that in there :-)

1. Firstly, lets configure BusyBox. In the link above, we installed BusyBox installer. ZergRush did install the correct version of BusyBox in the process of rooting, however I always like to make sure I install BusyBox whenever a tutorial instructs me to do so, as certain tasks require different versions of BusyBox. Open the appdraw on your phone (by standard this would be the bottom middle software button on your home screen) and find and launch 'Busybox Installer'.


You will see two drop down boxes near the top, the first labelled 'Select Busybox Version'. Press the arrow to the right of this box, and select 1.18.2 from the list. Don't worry about anything else now, and just press Install.

2. Now lets grab the script we're going to run. Again, XDA is to thank, this time a developer called Zeppelinrox, so don't forget to log in with the account you created earlier (wink wink!) and thank the author of the original post. Don't forget I'm just translating this into easy to read instructions.
Appreciation Thread: http://forum.xda-developers.com/showthread.php?t=991276
Script: http://forum.xda-developers.com/attachment.php?attachmentid=661892&d=1311292674

The script is just a .txt file, so download that to a location of your choice, so long as you know how to get there (such as your desktop). This file will ultimately find its way to your desktop in the next few steps.

3. Once you've downloaded the file, find it in the location you saved it, right click on it and select Copy. Connect your phone to your PC. With the phone connected, press the physical menu button (the one with a long line on top of three shorter lines), then go to Settings, Sony Ericsson, Connectivity, USB Connection Mode, and select Media Transfer Mode. This will cause your PC to disconnect and reconnect to the phone, in it's new state.

4. Next, go to Computer/My Computer (depending on your Windows version), and find your device in the list.



Double click on your device, and then double click on Memory Card. Rick click on a white background area, and select Paste. The .txt file should now be on the storage card.

5. Once the file has coppied across, you can disconnect the phone from the PC. Next, open the app draw (the bottom middle software button on the home screen) and find 'Script Manager'. This is another one of those scarrier looking places, but as long as you follow this guide, you'll do ok.
Scroll to the bottom of the list and tap on 'V6_SuperCharger_for_Android-update8.sh.txt'.

Make sure this screen looks like the screenshot just above on the right. The key things to check are that SU is green, the other 4 icons are white, and 'Is Script' is selected.

Now press Run (top left). Another scary screen.

6. Now tap on the screen. This has a slightly poor response and you will probably need to keep pressing the screen several times to toggle a sidebar to come on and go away. Press the screen, sidebar comes on. Press it again, sidebar goes away. But don't go too fast, the aim is to eventually bring up the keyboard.

On your keyboard, type 3 and press enter. Let it do it's thing. After a few seconds it will ask you to make another choice, this time between 1-17. Don't worry about anything it says on screen - usually you would need to make a choice based on the on-screen text, but in this tutorial I'm telling you what to select. If you find it of interest, you can take a look at the on screen text, however it really isn't necessary. Just type 6. And then press enter.
It will again do it's thing, though this time it will take a little longer. Once it's done, you will return to the list of 17 options.



Below the list, you should see the following lines:


Launcher is HARD TO KILL! ie. SUPERCHARGED!
Current minfrees = 6, 8, 26, 28, 30, 32

If it displays those lines, including those exact numbers, you are supercharged.

7....BUT... theres a tiny little bit more. Having run this script, a new script has been created. Don't worry, you don't have to do anything as tricky as that again, this next step is relatively short. Select option 16 to reboot. The device will begin to restart. There is no warning, it will just switch off then start back up again. Once done, open Script Manager again. At the top of the list of folders is a folder that just says '..'. press this. This will take you up a level. Press it again, and then press 'Data'.

Scroll down to quite near the bottom - there should be a new script, 99SuperCharger.sh. Press this, and made sure the Fav, Net and Wick icons are white, whilst the SU icon is green, and the Boot icon is a faint blue. Make sure 'Is Script' is selected, and then press Save (top right).

8. Finally, restart your phone.
________________________________

So there's quite a bit going on up there, however hopefully by the end of this post, you've eliminated any fears you may have had about rooting, experienced it yourself, aswell as taken advantage of one of the benefits, in supercharging your phone.

As I mentioned before, I don't plan any regular schedule with these Beginners Guides, so I can't say when the next one will be, however I would like to focus on memory management next time, and at some point in the future, FlashTool, which allows you to flash old and new firmwares. You'll never know how useful it is until you need it, and when you do, you'll be glad you can!

Right, I'm off to make an omelette.

3 comments:

  1. Excellent post. I installed SuperCharger a while back (Arc S) and it fixed the launcher reload issue which was driving me nuts. People keep asking me how to root, etc. and now I can point them to this post!

    ReplyDelete
  2. Thanks buddy! Unfortunately anyone attempting this with the latest firmware (.62) will be out of luck, as the loophole has been fixed :-(

    This said, when I've got a couple of hours to spare (very busy with uni stuff right now) I'll be testing out, and reporting on a method I've used previously with unrootable firmwares, which should result in a rooted phone, without touching the bootloader. Hopefully that'll be sooner rather than later.

    ReplyDelete
  3. I’m glad to find so many useful and informative data on your website.
    android rooting forum

    ReplyDelete