Root access has long been a staple of the Android enthusiast scene. After all, we chose Android over iOS because we don't like being told what to do, right? What better way to exercise that freedom than by rooting and generally mucking about on /system? As Android has matured, I've noticed that a lot of my reasons to root have changed as well - some have even disappeared.
If you're not sure what all the fuss is about, this might be a good place to start!
This post has two purposes:
- First, an opportunity for me to document my root experience. I think it will be interesting to look back on how my rooting needs have changed - both now as well as in the future.
- Second, I hope that it will inspire others to share their root stories. I'm curious to see if my progression matches up with anyone else's.
My earliest experience with Android came in mid-2009, with a 1.5 Cupcake build ported to run off the SD card in my Windows Mobile AT&T Tilt (HTC Kaiser/TyTN II). That was, of course, rooted - and buggy as hell. My first real Android device was a Nexus One that I ordered in April 2010 while deployed to Afghanistan. I booted it once and immediately did "fastboot oem unlock" and flashed superuser.zip - again, while living in a tent in Afghanistan. Next was a Galaxy Nexus, which I didn't even boot before unlocking and rooting. The same goes for my Nexus 4, my current daily-driven Android device. All these were rooted, all of these ran custom ROMs and kernels and themes and mods.
As Lollipop's release started to near I decided that I wanted to try an experiment to find out just how comfortable could I be with completely stock Android. I flashed the 4.4.4 factory image onto my phone around October 20. I installed my usual set of applications and applied my usual settings, but did not flash a custom recovery or otherwise tamper with the system. I used that, in its bone-stock format, until I flashed the 5.0 factory image on November 14, which I used in similar bone-stock format until finally rooting again on November 26. I've now had a few days to settle in with my new-old root.
So what have I learned from this experience? Stock Android is far more ready to suit my needs out-of-the-box than it used to be. I was actually pretty content without root for over a month - by far a new record for me.
In the olden days, I would root to:
- Remove unused system apps. This was less for reasons of storage space (after all, /system can't easily be used for user-installed applications), but more so that services that I didn't want or use wouldn't be running in the background. Now this isn't really necessary because I can Disable pretty much any pre-installed application that I don't want.
- Overclock the processor. Once upon a time, Android devices didn't perform all that great. Juicing a few hundred more megahertz out of the system could make a lot of actions a whole lot more bearable. Now I don't really need this as most modern Android devices have plenty of oomph for performing daily tasks, and the OS has really been optimized for better performance on the whole (thank you, Project Butter).
- Theme or otherwise change the look of the OS. Whether it was installing an entirely-new ROM, flashing a .zip theme, using CyanogenMod's T-Mobile theme engine, or manually replacing strategically-placed PNGs, it was all about trying to make my Android look just a little bit better. After all, it needed it - from the searing white statusbar of Cupcake-Froyo to the black-and-green "hacker" look of Gingerbread, Android was not visually attractive. (Granted, a lot of those early themes were just as bad - if not worse.) Now, though, Material Design has given Android a consistent (and gorgeous, in my opinion) design language. It looks great, and I don't really feel the urge to mess with it.
- Turn on the flashlight. Remember when this used to require root? It did - and the implementation often had to be built specifically for a given device, using low-level hardware black magic to make it work. I can't remember exactly when that changed, but at some point you could use an app like TeslaLED to control the video camera's flash without root. Now,though, Lollipop adds a handy Flashlight toggle built right into the Quick Settings menu.
- Take a screenshot. Yes, this also used to require root access to do it locally on the device (as opposed to via adb). Now, Android 4+ has an integrated screenshot capability (Power + Volume-Down).
- Disable persistent notifications for high-priority background apps. Android is generally pretty good at managing running applications, but I use some apps which need to run in the background without being terminated by the OS. Android, however, requires these high-priority background services to display a persistent entry in the notification bar. The alternative used to be using root to enable these applications to run as system apps. Now, though, Android 4.1+ lets me disable notifications on a per-app basis at the system level. All of the stability of knowing that those important background apps won't get killed, none of the notification clutter. Win!
- Save battery with apps like JuiceDefender, which need root access for some of the lower-level controls. Eventually, though, I stopped using these apps altogether; I simply found that constantly toggling data and forcing sync on my schedule was actually less efficient than letting Android handle all of that on its own. Now, with Project Volta, Android is able to handle all of that messy sync business (and other battery-critical tasks) even better.
- Use Tasker like a boss. Tasker is one of very few apps that has been installed on ALL of my Android devices, and much of its utility is derived from the ability to automatically adjust various settings - some of which (particularly those that are security-related) tend to require root access. Recent Android versions added the Device Administrators role which opens up a lot of those security and other settings to trusted applications, like the super-handy Secure Settings Tasker plugin, without requiring full root-level access. That's awesome, but I still needed root for some of the more advanced capability (like enabling/disabling the Pattern lockscreen). Now, Lollipop's Smart Unlock options let me automatically disable my PIN/Password/Pattern lockscreen whenever my phone is connected to my Pebble smartwatch or my car's head unit as well as when I'm at home. No Tasker needed for that; I still use Tasker for plenty of other things, but that eliminated my last real Tasker root requirement.
- Backup/restore. With all of that tinkering, I was bound to run into trouble sooner or later. Titanium Backup has long been a life preserver for tinkerers like me, making it
easysomewhat less painful to hop between devices and ROMs - and at least making it possible to recover from critical failures. Root was required to let TB jump over all the pesky file permissions and be able to access application files and their data. Now, Android 4.0 introduced the adb backup mechanism, which applications like Helium are able to leverage to create and restore application data backups without requiring root. Add in Lollipop's much-improved backup/restore capability (which actually lets you choose which applications should be reinstalled from your Google account, rather than just hoping that everything works out) and moving between devices or getting set back up after a factory reset has become much easier than it used to be.
So there's why I was able to be pretty happy without root on 4.4 and especially with 5.0. Why did my spirit break and my phone root itself* last week?
* well, basically
Now, I use root to:
- Get a "warmer" (and dimmer) display at night via Chainfire's CF.lumen. Yep, the primary thing that drove me to root my otherwise-stock device is purely cosmetic. CF.lumen automatically makes the display colors warmer (less blue, and thus easier on your nighttime eyes) when the sun goes down. Other apps, like Twilight, do this by applying a red-filtered overlay ontop of the display; this causes the black pixels to look quite a bit washed out, as the filter gets applied regardless of color. CF.lumen actually adjusts the color calibration at the kernel level, resulting in a more natural and even change (which includes the navbar, which an overlay can't touch). The app is also able to significantly decrease the backlight brightness, well below the factory minimum. After spending a month of getting by with Twilight, my eyes are much happier with a proper solution for playing my phone at night. (The colors in the screenshot are VASTLY exaggerated - that just seems to be a Thing Which Happens. The important bit is that the color calibration is applied evenly across the entire display without causing the blacks to look washed out.)
- Enable LTE with a hybrid radio and build.prop tweaks. While not necessarily one of those things that I have to have, getting LTE capability back is a pretty sweet bonus.
- Flash a custom kernel. Again, not something that I can't live without, but it can be a nice thing to have. I rooted primarily for the above-mentioned CF.lumen goodness, but I didn't waste any more time before flashing the latest Faux123 kernel which includes his new "Intellimm" governor for extended battery life. (I even built a quick Tasker profile to automatically switch to this governor when the battery gets below 40% - a preemptive move before Lollipop's Battery Saver kicks in at 15%.)
That's it. That's the extent of what I'm now using root for.
Now, how about you? Why do you root, and have those reasons changed at all during the time you've been using Android?
Last edited: