Guide for Newly Rooted Android Users A free guide provided by the team at Rescue Root, the easiest way to root your Android device.

First Few Steps From Root ...... 3

Simple, Easy, Neat Apps ...... 4

Where to Find Apps ...... 4

F-Droid Free Open Source App Repository ...... 4

Ch1: The Bare Essentials ...... 6

Manage Root User Apps Responsibly ...... 7

Superuser App ...... 8

Superuser Elite ...... 8

Super ...... 9

Super SU Pro ...... 10

Busybox ...... 10

Ch2: Before You Get Started ...... 12

Things To Set Up Before You Begin ...... 13

Titanium Backup Pro ...... 14

My Backup Pro ...... 15

Google Account ...... 15

Root Management ...... 17

Terminal Emulator...... 18

File Managers and Explorers ...... 18-19

Ch3: A Few More Things We Can Do With Root Access ...... 20

A Rooted World of Apps...... 21

Get Rid of Ads...... 22-23

Unmonitored Data Tethering ...... 24

Speed up and Optimize ...... 25-28

1 Improve your GPS speed ...... 25

Speed up your internet connection ...... 26

Manage your CPU and Battery consumption ...... 26-28

Change default look and feel ...... 29-31

Ch4: Custom Recoveries, Kernels and ROMs ...... 33

A Bold New World Of Customization ...... 34

Custom Recoveries ...... 35-39

Custom Kernels ...... 39

Custom ROMs ...... 39-42

Ch5: RooRootedted Apps That Deal With Custom Recoveries, Kernels and ROMs ...... 43

Root Is Also Found On The Other End...... 44

ROM Manager ...... 45

Kernel Manager ...... 45

Mobile Odin ...... 46-47

Parting words ...... 48

2 The FFFirstFirst Few StStepseps FFFromFrom Root So, you've just rooted your Android phone. Now what? Explore the newly unlocked possibilities, of course! This is your A to Z guide, the newest eBook on the scene for you, outlining the latest trends, sifting through the apps, and going under the hood, overclocking to boost performance – the current leading resource on Android rooted.

You are now rooted! Simply put, you have entered the status of being a true Android device user. Think of it as one bold step in becoming a black belt. Getting root access on your device is but a gateway to many opportunities.

A whole new level of Android awaits you after you take that first step. Many people don’t know what to do when they finally get root access. There are those who simply rooted and don’t know what it really is for. There are also cautious people, who would want to know what they get for all the trouble of getting root access on their device.

Whether you are rooted or not, this book will be you’re A-Z guide to the world of root access. Everything you need to know about messing with everything under the hood of your device. What are you waiting for? Let’s get started!

3 Simple, EasEasy,y, Neat Apps

The most popular apps with the best support make you feel like you're getting a new phone. Mind the gap, please; there have been some traffic jams since the last rush of publications for a new Android release.

Jelly Bean, Ice Cream Sandwich, Honeycomb, and Gingerbread entice with the possibilities of your own wild variations; this is your A-Z guide for trendy, dependable recipes from installing custom ROMs in a flash to the best part of owning a rooted phone: the apps! Thankfully, you have this eBook, helping you every step of the way with practical magic and context. Read on for the newest, most popular apps supported on your rooted Android phone.

Where TToo Find Apps Blogs can help you match apps with your phone and Android version, as well as provide leads for the trending new mods as manufacturers roll out open source releases. You'll find leaked software and open-source app repositories among the chatter on developers' forums such as xda-developers.net.

Of course, the Play Store also matches up compatible apps with your device. The Play Store has a filtering system that prevents your phone from seeing downloads for apps that your device or country does not support.

Take note that some apps may not be available directly from the Play Store, and might only be available through the developer blogs and forums, as well as on 3rd party Android markets.

FFF-F---DroidDroid Free Open Source App Repository F-Droid is one of the trendiest open source “competitors” to Play! If you are the type that likes to use free and open source programs, then you should take a look at their repository. A lot of useful productivity and rooted tools exist here, with ongoing development from open source advocates.

4 Some of F-Droid's highlights:

• aNetMon: Network event logger

• androidVNC: remote desktop viewer

• Angulo: angle-measuring tool

• aagtl: geocaching utility

• Ardroid: remote control for 's Ardour Digital Audio Workstation – no longer will you be stranded at your computer while jamming or when recording synthesized music live.

5

6 Manage Root User Apps Responsibly These apps grant and manage the Superuser (also called the root user) permissions you've accessed by your Android phone. A Superuser app provides a list to keep track of which root-only apps you've installed and have given root permission to.

There are two ways to manage permissions. The most common way of granting permission is giving permanent permission, where your root apps are always allowed or denied access as soon as you enter the root app. You can also set it to always ask first, which is seldom used, but is great for those people who love full control of their device.

This eBook begins with the Superuser apps often embedded as an essential part of custom ROMs (custom ROMs are covered later) and may sometimes come along with certain root methods. Certain root methods just asks you to install the Superuser app of your choice after enabling root. After you install a Superuser app, you'll be ready to start exploring the world of rooted apps.

7 Superuser App Superuser is recommended by blogs like Lifehacker and is often bundled into custom ROMs. With Superuser, you choose which apps have access to root (try typing “su root” into your terminal and you'll find the ubiquitous pound emblem).

Superuser gives you all the security that Linux is famous for and helps you act with the minimum permissions you need at one time, which is the Linux design philosophy for security.

The best part is, all this security and responsibility is easily accomplished in one click! If you have granted permission to a root app, it is also very easy to deny that permission at any time. Elite adds more security, but we’ll get more of that later. The newest version of Superuser has an OTA survival mode and an Unroot option. Both options don’t always work, and may depend on the ROM and the model of the device. Over the air updates or any other updates for that matter, usually remove root and Superuser.

By rooting your phone you've unlocked the root permissions, but with Superuser you still have the control. This app is an essential element to help you quickly get up and running rooted applications.

Superuser Elite Superuser Elite provides more security in maintaining your root permissions. After all, giving the wrong app a root level access can potentially break your device. It also opens up some advanced features making Superuser a more convenient tool.

Extra Features

• Modifying Files: A stores the permissions for all the root only apps installed on your system

• The elite version of Superuser allows setting timeouts for apps that have the permissions. This adds a new layer of root access management.

• Ability to require a PIN code before allowing root access for added security from automated scripts.

• Ghost Mode allows you to hide the Superuser app from the app dock. This prevents others from making changes in the settings. You can access the app through a code that you can enter through the phone dialer. The code can be changed at any time.

• Toast Notification allows you to edit where the screen you want the notifications to appear.

8 • Elite allows you to backup apps and preferences in case you wipe your phone in the future.

Reviews

Reviews for the latest version of Superuser 3.1.2, released on June 30, 2012 expressed consistently positive chatter this winter for the easy update process, even while updating the embedded Superuser app on custom ROMs like Sandvold's ICS beta.

You won't have access to the amazing apps only available to root users without installing this free app. It will be unobtrusive with its ghost mode feature, which allows it to run in the background, without an icon in the tray at the top of your screen. This is ideal, so you can go on exploring new apps without accidentally giving them root access: this app only pops up when you want it to.

Next is another Superuser app that goes a step beyond Superuser by providing recovery tools and a task manager that can detect processes. If you've just rooted your Android and you miss having the Linux terminal or Windows task manager backing you up, read on.

SuperSU SuperSU provides many similar features to Superuser, but we're covering it as well because, like Superuser, it is bundled into many custom ROMs and, unlike the Superuser app, it provides a few extra options for backup and recovery that will give you some confidence. With this app you can get more advanced and fine tune performance or even install a totally new operating system on your phone. If the original Superuser app is giving you problems, you can give this a try.

Extra Features • Here are some of SuperSU's enhancements:

• Ghost Mode goes without notifications, which can bog performance

• Deep Process Detection: This makes sure you know everything that goes on within your rooted environment.

• Recovery and repair features will be most effective when you install SuperSU right after rooting your phone.

• Works only when you need to through a wake up prompt.

• The SuperSU binary is based on the original Superuser binary for compatibility. Users can temporarily unroot to get under the radar of some apps that hate root access when detected.

9 • Superuser or SuperSU : This support forum thread is for the , but it will go into more advanced features like installing custom ROMs while keeping the SuperSU as the permission controller.

• This also allows temporary unrooting, with about the same chances of succeeding as the original Superuser app.

While you can configure SuperSU for maximum automation, freeing you to upgrade your Android, it can also make a big impact with its time-saving layout. You'll also have a process detector that can help you manage performance as well as which apps are using the root user permissions.

App developers will also welcome integration between SuperSU and ADB, the Android debugger you may remember from your root install!

Open Source Community Support

The Android open source community is very open to helping you out if you have problems with getting root to work. The developers of the app are dedicated into helping you get things going.

• The SuperSU developer provides detailed instructions on how to switch back and forth from SuperSU to Superuser, so with either choice you'll find a supportive open source community.

• The XDA developers also host a fervent support forum for SuperSU.

SuperSU Pro The Pro version adds more features like logs with color-coded input, output, and error , as well as an additional measure, a PIN login for the SuperSU app itself. SuperSU pro also offers OTA survival mode for seeing you through manufacturer updates. The SuperSU OTA survival mode is more successful on most attempts than the original Superuser app. Still, it is not a 100% done deal.

Busybox Busybox is a system tool that allows your phone to perform more complex actions. These actions are not natively available for your device, but it can certainly improve your rooted experience. Many sites agree that BusyBox is the Swiss Army Knife of Embedded Linux.

Much like Superuser, most new custom ROMs have Busybox installed already. Certain root methods may have installed Busybox for you already. If Busybox is not part of your phone yet, Stericson has developed a pretty good Busybox installer in the Play Store. With his BusyBox app, Stephen Erickson has hand-compiled for Android a replacement for the GNU Core Utils.

10 Most of the commands read the same as GNU Linux shellutils, fileutils, and textutils for the command line – they also behave like the GNU Core Utils that form the core of GNU Linux, or the layer right above the BIOS. BusyBox is actually a tiny, ultra minimal 800kb operating system, but since it usually purrs along automatically in the abyssal zone of the operating system, this ebook will simply shine some light on it and move on. If you have a rooted phone, you'll need this app to enable some root only apps.

Not all root apps require Busybox, but it is a handy tool to have around when necessary. You would definitely be happier having it all the time and not using it rather than scrambling for it when the time comes and you do need one. One of the most notable root apps that require this tool is Titanium Backup. We will know more about that later on.

11

12 Things To Set Up Before You Begin

So now you are rooted, you have your root permission tools, your command tools and you are raring to go and do some messing around in your root . The thing is, you are not yet ready. Preparation is a key step to any battle, and every art.

Before you go and start actually modifying your user experience with Android through root, you need to make sure you have a way back. Backups are going to be your best friend especially when you mess up and have to start over.

There are several ways to make backups of your device. There is a method that involves flashing a ClockworkMod with nandroid backup, and then there are methods that involve root applications. You can check the bonus section for more on nandroid backup. For now, let us see what your root can do.

13 Titanium Backup ProProPro

In a Twitter poll by the developer of the Superuser app, TitaniumBackup was voted the #1 Favorite of the Top 9 Root-Only Apps. The active development is one of its best features: its last update was September 27th, 2012 for . It's also earned an impressive 5/5 Star rating on the Marketplace. Lifehacker dubbed it “Best Backup Android” from Lifehacker and it received “App of the Year 2011” on mobiflip.de.

With Titanium Backup, you can backup and restore your apps, data, and market links. Although it earns its namesake by delivering a total backup to email or cloud in just one click, this app has everything but the kitchen sync. After the jump you'll find some of the highlights.

Here are some of the functions that make this app unique:

• Removes clutter – it can freeze and even uninstall some unwanted apps in your device, such as bloatware from the manufacturer.

• Automatic update manager that keeps track of your apps. A Market Doctor feature will mend your links to point to the Google App store, where the updates can be relied on.

• Cache Cleaning: Android apps share a “” cache – this means that cleaning the cache will often boost performance or fix some problems related to the Dalvik cache. This cache is a temporary space used by the Java Virtual Machine.

• Sync to , Dropbox, or Box.net.

As a backup tool, this app serves as one of the most comprehensive backup systems available on rooted devices.

• Scheduled backups – this app supports unlimited scheduling of backups, making sure you always have a backup of your apps in the most timely and recent manner.

• Selective Backup and restore – Titatinum Backup is built to backup both the app itself and its data.

o Data – Data backup and restore allows you to keep save games, actual data and preferences. This is the most important detail to backup.

o App – The app itself can be backed up and restored at any time. This is very useful if you are about to try an update that you are not sure you want. You can restore back to the previous version if you are not satisfied with the update.

14 • Multiple backups – you can have multiple backups for every app in case a backup goes bad, or it backs up a non-working version of the app or data.

• Encrypt backups – a very important detail about backups is encryption. You don’t want your app data stolen for many reasons.

Another aspect in which Titanium Backup outshines the competition is that it automatically installs basics like BusyBox. If you've ever seen Hackers or were mystified by Neo using a command line in The Matrix, that's all the preparation you'll need for this section.

Titanium Backup will install BusyBox for you in the off chance your Buysbox is not working, and automatically keep it upgraded. Muck like BusyBox, this app is like a Swiss knife. You can definitely do more with it if you care enough to poke around.

My Backup Pro

While Titanium Backup is more like a nuts and bolts kind of back up app, My Backup Pro is for those who are a lot less adventurous. This app is purely dedicated to backing up your apps and their data, including a bunch of stuff that you would seriously want to back up, such as contacts, calendar entries, SMS, MMS, System Settings, Home Screens, Call Logs and even Browser Bookmarks. It makes a full backup of your entire phone’s day to day data.

An emerging new feature is being able to remotely back up your device from the browser. This is great in case you feel you might lose data, or you have lost your phone. While being able to track it down would be much cooler, this service is definitely welcome.

Google Account

Something for you to consider is your Google Account. Now, I know at some point, be it before or after you got your Android device, you have been made aware that this phone requires a Google account. You need it if you want to get 99% of the Apps you want on your phone.

Some people don’t know it, but Google can actually back up a large amount of data for you at no extra cost. Google can help you back up your entire contacts library, your calendar entries, your photos and even your bookmarks. If you use Chrome, it can back your internet history at a deeper level.

My advice is if you are going to use a Google centered device anyway, make sure to make good use of this feature. Your backups are kept in the cloud, and if you lose your phone, or simply lose data,

15 you can get it right back after signing in.

16 Root Management Ok, we now have your data secured in the best way possible. Let’s start taking down some apps you may want in your device to be able to manage your rooted life easier. I will list down a few recommendations. There will always be an alternative at some point or another. Choosing the best one for you will always depend on your mileage.

17 Terminal Emulator

If you're curious you can go under the hood with the Terminal Emulator , which provides many classic commands. You can also explore BusyBox commands with Terminal Emulator. One tip: type “ls” to see what commands you have available for each directory.

File Managers and Exlporers

As you go through the many tweaks, optimizations and new files that make your phone into the best science experiment every, you will need to have direct access to the . Changes may involve replacing or removing system files, or simply fixing access permissions. Whatever it is you may need to do, you need a stable and reliable file manager to make sure you don’t mess up.

Root Explorer This is the most basic and most recommended root manager in the market. It is so well known and used that developers even bundle this app with your installation. Root Explorer is probably the last app you'll need to complete the basic set up of your rooted phone – a graphical, user-friendly interface for managing files. With Root Explorer, you'll have total access to your system files. • Set folder and file permissions • Create and extract .zip files • Send/receive files through email, Bluetooth, and more Root Explorer also comes with a Text Editor and adds the always-useful “Open With” feature, so you'll only have to use the Terminal Emulator when you want to. If you took the time to check the Play Store for this, you would notice that Root Explorer is not free. While it remains as one of the top choices in root directory file management, there are others out there with a lesser price tag, or even free.

X-Plore File Manager While Lifehacker and Brighthub both praised Root Explorer last year, and while it remains a popular option, one of the hottest root-only apps on appbrain.com is the X-Plore File Manager . You'll have total superuser access to your Android's files like with Root Explorer, but with X-Plore you'll also get support for cloud storage: Picasa, Google Drive, Dropbox, SugarSync, Box.net, Skydrive, WebDav, and Yandex.disk.

X-Plore also innovates by working seamlessly with .zip files: with X-Plore, you can open them just

18 as easily as a folder. App Developers can also unzip .APK app files.

Solid Explorer If X-Plore File Manager is not giving you the best experience, maybe you should give this a shot. This App mays till be in beta stages, but it is free, working really well and is shaping up to be fast, stable and very capable file explorer with specialized root controls.

It does everything you can do with X-Plore File Manager, with a little bit more every update. It also offers a different look into the whole , in case the other explorers don’t look so easy to use for you.

There are certainly more of them out there, you just have to look. Discovering and testing out new things is half of the fun. Being rooted, you perform a whole lot of trial and testing in the lifetime of your device. Remember that everything is an adventure, and make sure to have fun!

You've successfully rooted your phone and laid the groundwork for rooted apps. You've:

• enabled Superuser,

• backed up your progress so far,

• chosen a graphical way to manage files and access the terminal

Well, as far as the basics are concerned, we’re done here. You have set up everything you need to make sure you are prepared to take the next steps forward.

From this point onward, everything is your call. There is no clear step to take, and the branches of things to do are enormous. It’s up to you where you want to start, what you want to do, and what you want to avoid.

As far as this primer goes, we’re just getting started. While I can’t and shouldn’t dictate the next steps you should take, I would like to give you a few tips on where you might want to begin your journey.

19

20 A Rooted World of Apps With root, you can do a fairly large amount of things to customize your experience of the Android operating system. Previously, one would have to know a fair bit of programming and knowledge of the Linux operating system to be able to make changes using root access.

Thanks to the efforts of many talented developers, we have a lot of applications that can easily do the things you want by simplifying and automating the process of messing with the root directory.

Consider making donations or actually paying for these applications when you have the chance to, in support of their endeavors. This will encourage them to further improve the existing apps and even make new apps that will make your Android experience even better.

21 Get Rid of Ads One of the greatest annoyances of the internet, and now the mobile phone, is Ads. Ads are like the eyesore that just has to be there so that you can talk with their beautiful sister. To enjoy the free apps and websites we use, we need the Ads to be there to pay for it without taking any cash from our pockets.

AdFree This app provides new possibilities for banishing ads. The AdFree app creatively uses Superuser permission to add a list of known ad servers to the /hosts/ folder, which is root access only. Because any hosts of adware are blocked by a virtual machine, the ads won't even download, so your web browser won't bog. This app is essentially a collection of scripts for moving files in the root-access only files; you could do this yourself. On most phones it will install in one click, and you could easily configure it by changing the source code and repackaging.

While the beautiful app GUI (graphical ) will update itself and configure itself, it could behoove you to know a little bit more about some of the settings. Theoretically, you could do all this yourself using only Apache and a few terminal commands. Here's the lowdown on what will happen if you uncheck that green box.

• Run TCPdumpTCPdump: captures information and analyzes “packets” or requests from DNS's (domain names). This will let you add your own hosts by looking at the logs – for example, if you find the DNS for a pesky ad on Angry Birds, a post on XDA-developers.net would be welcome.

• Use Custom IP/Use 127.0.0.1: 127.0.0.1 is the same as the “Local Webserver,” called local host. If installing AdFree results in pages that partially load, or if sophisticated apps like MedScape crash, the developer writes in the forum to try typing in a random IP in the Custom IP textbox.

• Mongoose Tiny Web Server: The Custom IP and Local Webserver selections also enable you to set up Mongoose, a tiny web browser that's less than 1kb and bundled with AdFree. Adding Mongoose to your Android's world of imaginatively-named software could give you more options than simply using local host – some apps need their own mini web server or they'll reconfigure the built-in Apache web server incorrectly.

• Updates and Support: The developer's website is a thread on the XDA Developers' forum. After the jump, you'll find a link you to a custom hosts file uploaded on the XDA Developers’ forum: it's been compiled from three different adware lists, plus research from individual forum members. Although the title reads, “How to filter ads on your G1,” you're

22 sure to find specific information for your phone, from the HTC Desire to the Droid Incredible.

Many phones have a different “symlink” (symbolic link) to the hosts folder /system/etc/; this app can create its own symlink in the /data/data/hosts folder. If you want to add your own blacklist, fire up your terminal emulator and copy the additional hosts file to /system/etc/ folder. You could also copy the hosts file to a folder that “symlinks” (symbolic link) to /system/etc/, like /etc/hosts/ or others.

Lifehacker recommends this app, and the developers seem ready to tackle major bugs – this app is beloved by a large online community on the XDA Developers’ forum. However, there are also some other open source alternatives.

AdAway AdAway is a trending app last updated in August 2012 that saw an exponential increase in downloads in September. Because AdAway uses a slightly different process for blocking ads than AdFree, according to some comments and forum posts, it's able to wipe the ads from Angry Birds.

AdAway offers users the ability to choose their own sources of hosts files. In addition to custom blacklists and whitelists, AdAway also provides a unique redirection list. If you're reading this ebook in China, AdAway's project page provides a list of sources to get around blocked DNS requests. Sources include Google, Facebook, and more.

AdAway can also take logs of all the DNS requests made to your phone – if you feel like you're the only one on a forum still being pestered by a tenacious ad, consider searching through the logs and try experimenting with adding hosts to the blacklist.

23 Unmonitored Data Tethering Most if not all devices since Froyo includes a way to tether the data from your phone to any wireless device. Newer versions of Android also allow you to tether via Bluetooth and USB connections.

The problem is that the default method is often monitored by the carrier. Some use it to collect data on your use for tethering; some use it to even charge you separately for tethering your data. There would even be instances where tethering is blocked by the carrier.

Since you are now a member of the rooted community, these things shouldn’t be a problem for you.

WiFi Tether WiFi Tether, probably thanks to the generic name, is one of the most popular apps in the tethering department. It enables your device to tether the data straight from your carrier. It may not work on older devices with kernels that don’t support Netfilter. Thankfully, most stock ROMs have this kernel installed.

Let’s list some features this tethering app has:

• Full timed control: you can set device to tether the data for only a limited amount of time. This saves battery and reduces the risk of you forgetting to turn it off. • Security: WiFi Tether allows you to encrypt your data connection through WEP, WPA/WPA2. You can even change the SSID of your device. • Ease of use: Rather than fumbling through the dock or settings to enable the tether, you can easily start tethering thanks to the one click widget that comes with the app.

Barnacle WiFi Tether The popularity of Barnacle WiFi Tether relies on its open source nature. Since it is open source, any good developer out there can contribute to fix any bug that comes along, or even add new features that may come in handy for the user. Barnacle is very easy to use, with no extra features.

The advantage of Barnacle is the ability to tether with any kernel, which makes this compatible with any phone. Thanks to open source, if a phone is not yet supported, it will only be a matter of time until it is.

24 Speed up and Optimize What we want from our is pretty much the same thing we wanted from our PCs. We want it fast, stable and smooth. With Root access, you can change things that the manufacturer has set. Many times, these new changes will be for the better.

Just remember, with every step in the rooted world, you have to be careful with land mines. Things can go south pretty quickly if you don’t tread carefully. Well, enough with the warnings, let’s speed things up!

Improve your GPS speed

Faster Fix This is one of the most popular GPS optimizing tools out there. This is great for devices like phones that have slow GPS lock on problems. It synchronizes your GPS database with the country you are in so it knows where to start looking first for GPS satellites.

The app interface is very fast and very easy to use. In fact, after installing it once, in theory, you can uninstall it since you are not likely to use it again, unless of course you are the type that travels to other countries.

GPS Aids This is a more complex and comprehensive tool in improving your GPS lock on speed. Rather than simply synchronizing servers, this app downloads the data from those servers to your GPS data so you no longer spend that time for the GPS to download the satellite data for your area.

The app also offers some comprehensive tools to measure your lock on speed and find out just how well your device connects to satellites. This was specialized for Galaxy phones and variants, but can work on other devices as well.

25 Speed up your internet connection

Internet Booster If you frequent XDA developers, you would probably come across a tweak that replaces certain lines of code or settings of your device that alters how your device handles and connects to the internet.

The technique used here is a known Linux tweak that has existed before Android. This is especially useful for stock ROMs, since more prominent ROMs like CyanogenMod already utilizes these tweaks.

This app can significantly boost your internet speed after patching. Mileage still varies depending on actual network type, as well as the ROM installed in the device and the existence of the tweak in your phone.

Manage your CPU and Battery consumption

SetCPU One of the most powerful apps you can use to manage both your speed and your battery life is named SetCPU. This app is the most comprehensive app for CPU frequency, voltage and usage control.

When you slide the dials for the max and min CPU frequencies, this app adjusts multidimensional governors written into the kernel at compile time. This sensitive app may turn off additional cores if they're not being used, or rapidly dial the CPU up after passing a certain threshold, then gradually scale the CPU back down – this last governor, “on demand”, is the default for many kernels.

The governors available to this app vary between different kernels and different devices. This app also supports profiles, which allow you to customize how this app manages your CPU power and usage. It is like creating your own, fully customized “governor”.

Things you can do with the Profiles feature

• Select a condition that will activate a profile. Available conditions are screen off, charging, battery level, in-call, and setting timeout limits.

• CPU settings can change based on the time of day. SetCPU's developer provides several example profiles.

• Set a profile's priority. When multiple conditions are met, SetCPU chooses the highest

26 priority.

Managing Voltages

SetCPU also gives you the ability to change your Android's voltage settings. Because power consumption decreases quadratically with voltage, even a slight adjustment in voltage can dramatically reduce power consumption. This provides undervolting for your phone, or slightly lowering the voltage of each available CPU frequency, SetCPU's developer writes. The voltage tab may not be available for some kernels.

While voltage can bring a simple, big change in power consumption, finding ideal voltage settings can require some experimentation and patience. Because higher voltages can create more heat, increasing voltage settings could be dangerous.

SetCPU reports that most often your phone will simply crash if you've selected a voltage that's unstable for your phone. Remember to always make a backup before you tweak, and read up on your device’s capabilities in blogs and forums before you select the voltage you want.

Benchmarks and Stress Tests

This app provides information about your phone, battery, CPU, kernel, and memory status. In addition, you can also run benchmarks and stress tests. For benchmarks, the developer recommends selecting the “performance” governor (or setting the max and min CPU speeds to be the same).

Background processes could interfere with the test, so this information will only accurately compare between phones with the same ROM and kernel. If the benchmark is lower, the machine is running faster!

Stress tests allow you to check for the stability of voltage settings or extra-high overclocks by reaching the thermal limits of your phone. Be prepared for some trial-and-error; with Titanium Backup you can confidently explore the limits of your phone's capabilities without fear of losing data.

No-frills CPU Control This is another CPU control app that is built to be as simple as possible. SetCPU covers a lot of customization in CPU management already, but a lot of users feel lost and unable to fully utilize the SetCPU settings.

No-frills CPU Control does exactly as the name implies. It allows you to simply set the frequency range you want your device to use, select a governor, and I/O scheduler. That’s it. It is a small program that runs in

27 the background and is relatively safe due to the “smart valve” feature.

The best part is that it is free, and as the developers say, it will always be free!

Autokiller Memory Optimizer Are you the type that has panic attacks when your phone’s memory (RAM) is almost full? Do you like to have plenty of available RAM? Or are you the type that likes optimizing the data stored for every App making sure you can multitask effectively?

If you have yes for even just one of those questions, then you would want to try out the Autokiller Memory Optimizer.

Special features:

• Frees up memory and speeds up system processes.

• Improves battery consumption by auto removing running apps from memory

• No messy ads

28 Change default look and feel Android is the king when it comes to customization and changing the look and feel of your device. Without root, Android is already pretty flexible, allowing you to download specialized and themed replacement applications for launchers, messenger and even for the browser.

With root access, you can change so much more, such as the default icons and colors of your device.

Metamorph Metamorph is an app that allows you to install theme packages that change the default look of system apps. People can download or create their own theme package and install it through the app thereby changing what the stock feel looks like.

Things you can change:

• Notification bar color and look

• Icons of system applications

• Icons of notifications such as Wi-Fi, new messages and battery icons.

• Change the look of the date and time

• Emoticons in the messenger

• And many more!

With Metamorph, you don’t even have to do all the work. Even if you don’t know how to make a theme package, you can make requests online or simply download pre-made themes. If you are a bit picky, however, and want to change the icons individually yourself, you can give Ninjamorph a try.

Ninjamorph Ninjamorph was built by the same developer who created Metamorph. Rather than installing a theme package, you can use different elements of other themes and mix it up. Ninjamorph allows you to see and replace icons individually from the device, so you can really make a custom tailored look and feel for your device.

It can change the same details as the Metamorph, so you are limited to system default icons and images. Originally, you can’t change apps that

29 have been installed from the Play Store, but the latest version of Ninjamorph now allows you to try and change Play Store apps after installation. Compatibility with some apps is still a bit sketchy, so you would have to just try if it would work on that app or not.

Font Changer One of the other things you can change with root is the fonts that are used by your device. Some may not like to have the default font that comes with their device, and some would also love to create their own fonts for their phone for better personalization.

Changing fonts require changing some system files, which you can only access through root, or through some system installed applications like the one found in Samsung’s devices.

Font Changer becomes the apps that you need to be able to changes these fonts.

Special features include:

• Ability to replace individual fonts

• Change the screen density to make fonts larger or smaller

• Localization support for English, Russian, Polish, Korean, Bulgarian, and Spanish languages.

• Importing your own fonts and font packages found in other applications

Font Installer This is another font changing application that has pretty much the same popularity as Font Changer. This app is actually an app that is already included if you choose to download ROM Toolbox instead. Those that want to use only the font installer can download this app instead of the full package.

Unlike Font Changer, there are premade fonts that can be selected from the app immediately, which is very convenient. It also allows you to install your own fonts just like Font Changer.

30 Changing system sounds Changing the system sounds is not quite as simple as using an app to do it. While there are apps like Lock and Unlock Screen Sounds and System Sounds Replacer, those apps are very limited and change the sounds to very limited choices.

To effectively change your system sounds into any sound, you must first convert the sound you want into an “.ogg” file. When you have created a compatible file, you need to use your chosen file explorer that can access root such as Root Explorer. Navigate to this folder:

/system/media/audio/ui

You should be able to access those folders by starting from the root directory. There you will find a large list of sound files representing several actions or choices that your Android device uses. Simply replace any file with your own sound file. Make sure to use the same exact file name for the system to recognize it. Just copy that same permissions found on the original file.

Important: Never forget to make a backup of the system files you are replacing, in case something goes wrong or you want to put it back to normal. That goes for all the files changed within the system. It would be beneficial to make a Nandroid backup before you do any system level changes.

31 You've now tuned your Android device into your personal device, as well as kept it in tip top form.

So far you have:

• Boosted performance by clearing the cache of the Java Virtual Machine that runs android apps as well as managed CPU frequencies and set Governors to maintain perfect performance and battery life.

• Shared your 3G Wireless with your other gadgets by setting up a Wi-Fi hotspot

• Created files in the root-access only file system that will block and adware DNS.

• Backed up your data from the start

• Changed the look and feel of your device

• Sped up and optimized some Android system processes like RAM and GPS

Are you ready to go a little deeper? This eBook’s next chapter is devoted to recoveries and custom kernels, which will then be a gradual transition into installing custom ROMs in a flash.

32

33 A Bold New World Of Customization We have delved into rooting and actually managing certain aspects of our ROM, or the firmware that is installed in our device. Think of it as making Administrator changes on your PC. You made it faster, and look just the way you want it to.

Going a step further, a larger form of customization and ROM management awaits us. Beyond simply rooting a ROM, you can actually change the ROM and the rules that govern its use. Think of it as similar to having Windows XP built into your laptop when you bought it, then installing or a custom Windows XP Black. You are basically changing the whole operating system of your device.

There are three things you usually flash into your device. These are custom Recoveries, custom Kernels and custom ROMs. The goal of this chapter is to simply introduce these concepts to you to introduce you to a whole new level of Android control and customization.

Some of you may have acquired root through installation of custom ROMs and Recoveries already, so you may be familiar with most of the stuff this chapter will deal with. Then again, you may want to read on as there might be something here that you never learned about before you got here. Delve into this chapter and enjoy!

34 Before you take your first steps into flashing and playing around with custom recoveries, kernels and ROMs, we would want to make you familiar about a few tools and terms pertaining to the experience. We want you to look less of a ‘noob’ when you place a question in the blogs and forums.

Custom Recoveries

Custom recoveries expand upon the normal recovery system found on the device by default. Stock recoveries allow you to clear cache and even wipe the entire device and return it to the factory settings. Your stock recovery is also used in applying official updates from the manufacturer.

With a custom recovery, you are greeted with several new options. We will go through the options of CWM or ClockworkMod 6. ClockworkMod is the name given to the most popular custom recovery. In fact, it may be the only recovery you encounter in flashing custom ROMs.

• Reboot System Now

This simply takes you out of recovery mode and reboots the device back to normal operation. This option exists on stock.

• Install Zip from SD Card

This allows you to flash custom ROMs and Kernel zip files that you download from the forums or blogs. This is a very important tool that you will have to be very familiar with if you will be flashing custom ROMs in the future.

This option is further divided into:

o Apply /SDcard/update

 This is an option found in the stock recovery. It flashes an official update file downloaded into the /SDcard/update folder. You won’t be using this much unless you are on stock recoveries and updating android officially.

o Choose zip from SDSDcardcard

 This is the option that you would use the most. With this option, you are taken into the sd card directory and made to choose the zip file you want to

35 flash.

o Toggle signature verification

 Simply toggles signature verification. The ROM or kernel will dictate if this is necessary

o Toggle script asserts

 Simply toggles script asserts. The ROM or kernel will dictate if this is necessary

• Wipe Data/Factory Reset

This is pretty much the same as the stock option of restoring to factory settings. The only difference is that it is the only safe way to wipe a custom ROM. If you wipe using the options found in the settings app while on a custom ROM, you are likely to encounter a boot loop. Basically, your phone will not work anymore and you would have to flash the ROM once more.

• Wipe Cache Partition

This option is also found on stock recoveries. This just wipes the cache partition rather than the entire device memory. It is a useful tool when troubleshooting a ROM. Troubleshooting usually starts with wiping cache and Dalvik cache.

• Backup and Restore

This takes you to a menu of several options to backup and restore your device. This is called “nandroid backup” and “nandroid restore”. Now, I promised you earlier in this book that we will talk about this in the end, so here you go.

A nandroid backup is not as simple as the backups done by apps like Titanium backup. The backups done by apps are dependent on individual app data. Basically, they backup the data of each and every available application.

Nandroid backup does something a bit more advanced. It takes a full system backup of your device. It is like taking a photo of what it is at that moment and saving that moment. If you play emulators, this is like a “save state”. It is saving not just the data, but how the data is arranged in the precise way it was during the nandroid backup.

In a way, it is a much better backup because not only does it back up the data of every app and every setting; it also backs up the ROM itself at that point. If you mess up your ROM at any point, or your data gets corrupted, flashing a nandroid backup is like going back in time

36 to a more suitable and working state of your device. It is indeed a valuable tool.

The three options available from this menu is

o Backup

 Just a normal nandroid backup

o Restore

 This option allows you to choose a restore file of a previous nandroid backup

o Advanced Restore

 Same as restore, but after choosing which nandroid backup you wish to restore, it gives you the additional option to decide which of the parts of that backup you want to restore. This is useful if you only want to get a specific set of data back.

• Mounts and Storage

This is basically a group of options to manage individual memory and storage partitions

o or Unmount the /syst/system,em, /data, /cache, /sdcard or /sd/sd----extextextext

 These options allow you to mount or unmount any storage partition depending on the need of the ROM. You won’t have to deal with this section often. You just need to know where it is when you do need it.

o Format the booboot,t, system, data, cache, sdcard or sdsd----extextextext

 This option allows you to format each type of memory space individually. You won’t need to deal with this much, as most installations will require a full wipe if any wiping is really needed.

 Some troubleshooting may require you to format certain partitions as well.

o Mount USB Storage

 This is a useful tool when you forget to transfer the file you want to install on your SD card. You won’t have to use an SD card reader nor do you have to boot the device back up to normal just to transfer a file from your PC to your SD card. This option allows you to do all your file transfers even while on the recovery.

37 • AdvanceAdvancedddd

This lists quite a few handy options that you may have to use during the course of your android life. It would be good to familiarize yourself with these options.

o Reboot Recovery

 This option allows you to restart your recovery without having to turn off the device and booting it again into recovery. This may come in useful when a reboot is required in between installations.

o Wipe Dalvik Cache

 This is the same option that is found in your Titanium Backup program. It is one of the two types of data that you routinely wipe right after installation of a new ROM or to clear some issues encountered during the life of a custom ROM.

o Wipe Battery Stats

 This wipes the battery stats of the device as well as recalibrates the battery. It is useful when you are encountering issues with your battery draining quickly, due to the misrepresentation of battery capacity.

o Report Error

 This option creates a log of recent activities of the recovery. It is used to report any errors encountered by the recovery so that the developers will know what went wrong and potentially find a way to fix it.

o Key Test

 This just allows you to test if the keys or buttons of the device are properly working.

o Partition SD Card

 This option is useful for those who want to migrate some portions of the external memory card’s memory space as a part of the internal memory. This is very useful for devices that have low internal memory. This provides an easy method of partitioning the device with preset values for the partition.

 Be careful as this option also wipes your external memory card.

o Fix Permissions

38  This just restores the permissions settings of system files back to default. It is very useful if you ever made any changes to permissions that you forgot about, and if these permission errors are causing problems to the device.

Now you should be ready when you deal with custom recoveries. You won’t need to bug the developers and ask which option is for which. It is mostly self-explanatory, but it would be to have this eBook handy when you need to review.

Custom Kernels

Kernels are part of the ROM. It is like a bridge program that sits in between your hardware and your software. It is a program that can dictate how much power and performance the hardware will provide so that the software will run properly.

Custom Kernels are closely related to overclocking and underclocking. If you remember our Root Apps like SetCPU, then you should remember about the minimum and maximum frequencies you can set on your device, as well as which governors are available for you to use.

In order to overclock, underclock or set custom governors, your Kernel must allow you to do so. If the Kernel only permits overclocking up to 1.4 GHz, then you can only select up to that much in SetCPU. If the kernel has instructions for Smartass governor, then the Smartass governor will be available in apps like SetCPU.

Flashing custom kernels often require you to have a custom recovery first. Kernels vary between devices, and each kernel must be tailor fitted for each hardware type. You can’t just go around randomly flashing kernels not made for your device.

Custom Kernels may also be picky when it comes to ROMs. Certain ROMs may be incompatible with certain kernels, so you may have to do some trial and testing, or simply read from the experience of others who have already tried.

Custom ROMs ROMs are basically a package of things that make your phone work. It has built in applications, kernels, operating system and system tweaks that make a phone run. When you first got your phone, it was running a Stock ROM, a ROM created and provided by the manufacturer. Custom ROMs are ROMs that have been created by a developer or developer community to run on Android devices. These are ROMs that are not officially sanctioned by the manufacturer and is

39 never supported directly by the manufacturer. With Custom ROMs, your support comes from the developer and the community built around the ROM.

Custom ROMs have different types. The type of ROM will often determine the compatibility, stability and features. Custom ROM types are separated into the following:

• Stock based ROMsROMs.... Stock based ROMs are custom ROMs developed by making tweaks and edits to the stock ROMs that came with the device. It may or may not have a theme, but it will perform differently from the original ROM, usually running faster and smoother thanks to the many tweaks and optimizations applied to the ROM. These ROMs are often the most stable ones, especially if it was based on an already stable stock ROM. Stock based ROMs often retain special features of the ROM it was based on, such as in the case of the Galaxy S3 stock based ROMs that still have the “Direct Call” and “Smart Stay” device specific features. These proprietary features are often left out of other types of ROMs unless they are somehow ported from the original ROM. • AOSP (Android Open Source Project) ROMs These types of ROMs are based on the Android Open source Alliance codes. They are based on the normal way Android is supposed to look and function, which is normally only seen on Nexus devices such as the and Galaxy Nexus. These ROMs do not have any manufacturer specific features, and only retain features available on the base version of Android it is compiled in. These ROMs aim to provide the pure android experience even to non-Nexus devices.

40 • AOKP (Android Open Kang Project) ROMs These ROMs are based on the code developed by the AOSP. They steal the code and modify it so that it runs differently from the Pure Android experience while being based on it at its core. It seeks to improve the basic code used on the AOSP ROMs and make it run better than the pure experience while still looking like the stock Android. Androidcommunity.com reports that the team has released over 30 builds since last year, showing that this project has highly active development. It also has over 180,000 users. • CyanogenMod and CyanogenMod based ROMs CyanogenMod is essentially a type of AOKP. It is also based on AOSP code, but is heavily modified to look completely different from AOKP. In effect, this AOKP has developed its own identity and is considered its own type of ROM. This ROM makes use of code from other developers in the open source community. It integrates the best tweaks and features to make a power-packed ROM. Think of it as Frankenstein in ROM form. It is one of the most popular and beautiful custom ROMs that is supported on the most Android phones. You can use flashy features like themes or a beautiful built-in DSP (direct- signal-processing) equalizer that also includes a waveform graph you can reshape with the touchscreen. CyanogenMod also provides many privacy features. Phone goggles can set filters on outgoing phone traffic, avoiding accidental phone calls and SMS messages. Filters can be organized by Work, Mobile, Business, etc. This ROM is often popular among developers and performance enthusiasts, and the widely-available CyanogenMod kernel can be compiled from source. This kernel provides extra governors beyond what Jelly Bean and other ROMs offer. The developer community has liked it so much that several custom ROMs that are based on CyanogenMod code have been released. These derivatives of the CyanoganMod ROM are optimized even further with the latest tweaks or the developer’s own tweaks. These derivative custom ROMs are often heavily themed to look different from the original look and feel of the

41 CyanogenMod to create their own original look and feel. • MIUI and MIUI Based ROMs MIUI is read as “Me, You, I”. It is actually a derivative of pure Android that has become closed source. These ROMs are developed by an independent company named Xiaomi Tech. They are the company that made the Mi-One and Mi- Two . MIUI is the official custom Android operating system these devices run. The MIUI ROM is like a mixture of iOS and Touchwiz, making a unique Android experience. Its code is actually based on a mix of AOSP and CyanogenMod as well as several tweaks and apps found from open sources or developed exclusively by the MIUI team. Despite that fact, MIUI uses a lot of their own unique system apps for services like calendar, contacts, dialer and messenger. It doesn’t have an app dock. Instead, it keeps all apps on the home screen, much like the implementation of iOS. The difference is the availability of Widgets, Live wallpapers and a lot of special MIUI interactive themes. MIUI is all about theming and customization of the device. MIUI has limited device support, which makes it kind of like an exclusive club of devices. Despite the limits in official support, a lot of independent developers do their best to manually port the MIUI releases to other devices. Devices that are supported officially by MIUI also get to have MIUI based custom ROMs, which is kind of like the Stock based ROM where MIUI elements are clearly kept and made even better with customized optimizations and tweaks. Now you know even more about your Android device, and the massive community that develops and supports it. If you plan to install custom recoveries, kernels and ROMs in the future, you are much less of a noob than someone who has not read this eBook.

Remember that this is just basic information to introduce you to the world of Android customization. Always make sure to read the developer forums or blogs carefully before making any changes to your device. Heed their warnings and follow their instructions carefully, and you should do fine.

42

43 Root Is Also Found On The Other End Now that you have learned about custom recoveries, kernels and ROMs, it’s time to go back to rooted applications. Rooted applications discussed in this chapter all deal with what you previously learned. These applications are meant to make your life with customization easier when dealing with custom recoveries, kernels and ROMs.

Take note that these apps only substitute normal means of installing these customizations, just in case the normal methods are too difficult for you to do. If you can, you should learn about how it needs to be done normally in case these applications fail to work for you.

Have fun installing ROMs!

44 ROM Manager

With over 3 million downloads, this is a must have rooted app if you don’t want to manually manage your ROMs. You'll be able to make backups, and you can easily install official and custom ROMs in one press from the web, SD Card, or from QR Code.

ROM Manager is linked to an online database of custom Recoveries and ROMs. It can help you install a working version of ClockworkMod on your device if the ROM manager has the device in the database. If it detects a compatible ClockworkMod for your device, it will be able to install it for you as long as you have BusyBox and Root.

Incidentally, the creator of ROM Manager is also the creator of the original ClockworkMod recovery. You will notice that many of the options of ROM manager are consistent with the functions of ClockworkMod sans the ability to connect to the internet and update ROMs and recoveries automatically from a database. Additionally, you can download and install custom themes using the ROM manager by using QR codes. You can also download themes manually and install it either by ROM manager or ClockworkMod.

If working with ROM Manager fails, you can always perform installations and updates manually from the custom recovery menus.

Kernel Manager

Kernel Manager is similar to ROM Manager, except it's for custom kernels only. Kernel Manager makes it easy to find, download, and install the custom kernels that are available for your phone. Kernel Manager's Team Win is one of the first developers to compile a list of customized kernels for a comprehensive list of Android phones. Visit this post on the XDA-Developers forum for a Q&A with the development team from earlier this year that may list your phone or install Kernel Manager lite and see what the automatic custom kernel fetcher will haul in.

Unfortunately, the app is no longer being updated with the latest kernels or with the latest devices. This app is now only useful for older devices looking for Kernels already supported by the last update of Kernel Manager.

45 Mobile ODIN You’ll only ever encounter the term ODIN if you are a Samsung phone user. ODIN is the name of the program used by Samsung employees to flash and develop ROMs for the devices they sell. Final versions are pushed through or OTA and are normally not available for regular users to flash on their own.

Sites like Sammobile.com collect leaks and ODIN flashable versions of the ROMs and make them available for download. If your Samsung device is on a custom ROM, rooted or otherwise messed with, ODIN is your only way back to stock ROMs.

Mobile ODIN is the app version of the Windows tool ODIN. It basically allows you to flash stock ROMs directly from the App. You only need to keep the files in your SD card and flash them directly from the app.

Why use Mobile ODIN instead of the original ODIN?

Unique to new Samsung devices is the flash counter. The flash counter makes a record of how many times you have used ODIN to flash anything into your device. As you can guess, if the flash counter reads anything other than zero, your warranty is void and you would not be able to get Samsung support anymore.

Mobile ODIN allows you to flash anything on your device without increasing the flash counter, allowing you to go back to stock without giving Samsung any hint that you have broken the terms of your warranty.

Special features of Mobile ODIN

• Boost Performance by Clearing the Cache

The Dalvik cache is the Java Virtual Environment that all apps share in common; this is one easy way to boost performance that starts to lag.

• EverRoot

EverRoot allows Mobile ODIN to automatically root your device after installing a stock ROM. As you know, flashing Stock ROMs normally removes your root access. This makes sure you won’t have to deal with that hassle.

46 • Inject Superuser

No doubt, Superuser is an indispensable tool for a rooted device. This feature allows Mobile ODIN to install Superuser right after rooting the new ROM you just installed through Mobile ODIN. • Inject Mobile Odin

Similar to Inject Superuser, this feature automatically reinstalls Mobile ODIN to your device after flashing a Stock ROM. Normally, the apps are wiped from memory and only stock Apps remain after flashing.

47 Parting words I hope you enjoyed your journey after root with this eBook. May you always stay true to Android and find happiness in making the device you bought truly your own. Android is a tool for the masses and the device is built for the people. Once again, welcome to the rooted world!

48