Getting to the Root of the Problem

You’ve probably heard the term “rooting” being thrown around before. Maybe you don’t know what it means or maybe you’re just undecided about whether or not to do it. In this post, I will attempt to highlight some of the most encouraging reasons to root your phone, some of which will be of particular importance to those of us interested in mobile development.

First, what is rooting? Rooting is the process of obtaining “superuser” rights and permissions to your Android phone. This leads me to what rooting is all about: control. I don’t know about you, but not having control over something that I paid for really gets to me. Many smartphone users are unaware of how little control they have over a device that in many ways controls them. With phones being as powerful and ubiquitous as they are, it’s important that we maintain control of them instead of the other way around.

Personalization and a more intimate control of your hardware.

Rooting your phone and installing a new ROM will unlock some amazing opportunities to customize and personalize your phone. Some of these features are ROM specific and others are not. Cyanogenmod has, for example, a number of features that only they offer. These include phone goggles and lockscreen gestures that will start any activity or application upon recognition(learn more about Cyanogenmod’s special features here).

Other features, like the ability to overclock your phone’s CPU seem to be more universal among custom ROMs. One of these that I find to be particularly useful is the ability to wake my phone with the volume buttons. My HTC Inspire 4g has a poorly designed power button that is relatively difficult to press compared to the other hard buttons on the phone. Pressing the power button used to be the only way to wake my phone until I flashed Cyanogenmod 7 (CM7). Perhaps the most sought after use case that still isn’t stock on android phones is the ability to take screen shots. By rooting your phone and installing a custom ROM like CM7, you’ll be able to do so without downloading an application.

Removal of Bloatware

AT&T FamilyMap™

AT&T U-verse Live TV

NASCAR Sprint Cup Mobile(sm)

If you’ve ever owned a smart-phone you’ve probably experienced the pains of bloatware. Bloatware is software that you never use, takes up valuable resources, and to make matters worse, you can’t remove from you’re phone. Some of the most well-known bloatware apps include: Google books, any of the AT&T apps, any of the Sprint apps, and even some of the more manufacturer specific apps like Facebook for HTC Sense. Rooting your phone enables you to remove these apps almost effortlessly, often leaving no trace of them or their wasteful ways. By simply going to the “manage apps” menu, you can choose to uninstall any app currently on your phone. For those particularly pesky apps that leave extra data behind, rooting your phone offers another benefit that is useful in the search and removal of this extra data which we will go over next.

File managers, performance managers, and app managers

Once you root your phone, you’ll be able to view the entire file system, using a file manager like Root Explorer. File managers will unveil previously hidden files and directories. Android is based on Linux, so you will find a very similar file structure to what you are accustomed to seeing at home or in the major’s lab. These apps are great if you want to erase unwanted files left behind, or if you just want to browse the contents of a certain directory. Maybe you downloaded something to your SD card but would like to move it to a different directory on the phone (moving downloaded ringtones for example). File managers like Root Explorer help you to do just that. They will also allow you to look at all of the content providers on your phone.

Advanced Task Killer

Performance managers can be great for those trying to maximize their phone’s performance. A good example would  be a task killer or Set CPU. If you plan on overclocking your phone’s CPU, you should know the tradeoffs in doing so.

App managers are some of the most important and probably least used apps (they’re also one of the more loosely defined categories). These include apps like LBE Privacy guardwhich I highly recommend. LBE will allow you to control the permissions that you are not comfortable granting to an app. In the wake of it coming out that Orbitz shows apple users more expensive hotels and  Facebook being as sketchy and intrusive as ever (without showing any signs of ever slowing down) it’s become glaringly obvious that even the most seemingly innocuous detail can be turned against us.  This is where LBE comes in. LBE will give the app bogus data, to make it think it has permission, but really it’s just pulling trash. This becomes especially important when you have certain apps that force close once they realize that a certain permission has been revoked. Maybe I’m being cynical, but I don’t want any app knowing more than they need to.

Custom ROMs

Finally, we get to the main reason why you’d want to root your phone: custom ROMs. You might ask, “Why would I want to change my ROM? It works just fine.” The answer to that question depends on a lot of variables. Maybe you’re tired of your current ROM and are just looking for a change. Maybe you know of some features that you’d like but your current ROM does not support. Maybe you’re tired of not being able to use fragments and certain functions because the API level of your phone is too low. Another reason might be that you’re looking for a ROM that is better on battery life. Personally, all of these reasons came into play when I decided to flash my latest ROM. Something else you might want to consider is how vanilla a ROM is. Some ROMs are based purely on the Android Open Source Project (AOSP) and others are based on HTC Sense for example. Knowing the difference is important when choosing a new ROM.

Hopefully, I’ve convinced you to root your phones. You may be wondering how to do it now. Unfortunately, there is no hard and fast way to universally root a phone. There are some applications that root many phones but I’ve never used them and can’t recommend any. If you want more information on rooting your phone you’re going to have to do a little bit a research. I suggest going to the xda-developers  forum where they have comprehensive instructions on how to root/flash a new ROM for most if not all android devices. It might not hurt to check the Cyanogenmod forums or wiki. Lifehacker is a decent resource too.

Warning: Rooting your phone may in many cases void your warranty. There is also the  slight possibility that you inadvertently brick your phone. Yes, this can happen. But if you’re careful and follow the instructions EXACTLY you should be fine. BE SURE TO READ EVERYTHING ON THE TUTORIAL. I cannot stress this enough. Things get updated, patches get deployed and you’d do well to know about them. I’ll say it again, make sure your technique for rooting is both confirmed and up to date.

Great! Now that that’s out of the way, go and root your phones!

http://www.cyanogenmod.com/about

http://www.xda-developers.com/

http://droidlessons.com/what-is-rooting-on-android-the-advantages-and-disadvantages/

http://www.tomsguide.com/us/Root-Your-Android-Phone,review-1688.html