Friday, 14 October 2011

[At Your Own Risk] How to backup your Rooted 'Droid - NANDROID & Titanium Backup

We're back with the second piece in our ongoing quest to help you wring the most out of your Android device.

If you followed the guide in the first part you may this very minute be staring at a newly Rooted Galaxy S II, and wondering what the heck to do with your newly acquired Root privileges (if instead you're staring at your Galaxy S II and wishing it were Rooted, but don't know where to start, try starting here). Or it may be that you're on another Rooted Android device, but still aren't entirely clear what to do with Root privileges, and why they were worth voiding your warranty to obtain. Whatever the case, this article has you covered.

Today we're going to cover backing up your Android device, which we reckon should be the first step any user takes on a newly Rooted Android device.

Before we start today's guide in earnest, please indulge us for just a few moments. While we don't want to labour the point of disclaimers every time we run a [At Your Own Risk] piece, it is important that you grasp the reality that modding your device carries risks, and that we aren't responsible for what might happen. Please take a minute to read the full spiel of disclaimer weasel words in the intro to this piece.

The CWM app makes backup an
absolute breeze
Now in terms of backup there were two things we wanted to cover today. Firstly, how to back up your device in recovery, and secondly, using the quintessential Android Root app Titanium Backup to make backups of your apps and their data.

You may have seen the phrase 'making a NANDROID backup' before, that's what we're talking about when we say 'making a backup in recovery'. Conceptually it's like the Android equivalent of a system restore point in Windows. Obviously this is an important step to take after Rooting the device, and before installing other mods and custom ROMs - it leaves you with a pretty significant safety net in case things go wrong.

Like many things in Android there tends to be more than one way to get this done. If you installed a CF Root kernel to Root your handset, like we did in the SGSII Root guide, then you can actually do this from within the Clockworkmod App (CWM) that is automatically installed with the kernel. Quick n easy. If on the other hand you used some other exploit to Root your handset and install a custom recovery, you'll need to follow these steps:

    1. Boot your phone into recovery.
            > In most Android handsets this is achieved in the same way - power off your device,
               press and hold the Volume Up and Home buttons simultaneously, then while holding
               those down press and hold the Power button. You should get a screen that looks
               something like this:

Welcome to recovery

    2.  You'll need to navigate to the Backup option and select it. Navigating through options in
         recovery is achieved with a combination of buttons, usually Volume Up and Down to scroll
         through options, and the Home key to select options. Unfortunately however there isn't a
         standard implementation for this, so in some recoveries you may need to experiment for a
         few moments to work out which buttons work for you (this is particularly true for the custom
         recoveries that come as a bundled component of various custom ROMs). Apart from the
         option to simply reboot your phone, nearly every option in recovery needs multiple selections
         to confirm you really want to perform a selected action, so your handset shouldn't come to
         any harm if you're confronted with an unfamiliar button mapping.

    3. Once you've selected the option to backup your device, the backup process will run. When
        complete it will return to recovery, and give you a message to confirm it was completed (or an
        error message if something has gone wrong, for example not having enough storage to store
        the backup data). You're done!

Backup in progress...
OK, moving on from making a NANDROID backup, lets talk about Titanium Backup (TB hereafter, as in the Android App, not the granulomatous disease that House postulates as a diagnosis in every episode of the show). Titanium Backup does a lot more than any backup option you have available on stock devices. A lot more.

As you can see I am already
struggling for space, despite
that 64GB micro SDXC card
The main thing that most of us probably do with TB is backup our apps and data. The most important bit of that sentence is the 'and data' bit. App data includes things like your login credentials, in-app settings, and most importantly for me: save game data. After all, I didn't spend all that time getting three stars in every level of Cut the Rope so I could do it all over again on my Tablet or next phone did I?

In terms of the power of Titanium Backup's core function to backup and restore apps I could simply say it's done right, and leave it at that. I guess that doesn't constitute much of a guide really, so let's talk to that point a little more.

Firstly, you can make sure that when TB restores your apps and their data, that it also restores their Market link so that they will appear in the Android Market under My Apps. This is essential, because restoring your apps but not getting notified by the Market of updates would be rather pointless.

Secondly, if you're not the most reliable person in the world at checking when you last backed things up, TB has your back in the form of scheduled backups. There are various options including backing up all apps, only new apps, or new apps and newer versions of existing apps, to name but a few. Shameful geek confession: I didn't get onto using scheduled backups until earlier this year - I did a full wipe install to a new ROM only to discover I hadn't backed up my Plants Vs Zombies data for a loooong time. Never again. If you can learn from my lesson then you'll never have to experience the pain I went through, and you'll also retain the ability to feel smugly superior (and/or point and laugh, if there's a little bit of Nelson Muntz in you).

If you're a sufferer of flash compulsion disorder then you'll love the Pro version's ability to do batch actions. Flash ROM, install TB on fresh ROM, set a batch restore going, come back a few minutes later - hey presto! All your apps are back, replete with their data and Market links. The real importance of this is that it lets you perform full wipe installations of new ROMs without particularly making restoration a headache. While [At Your Own Risk] will come to installing custom ROMs more fully in due course, take it as read right now that a full wipe install is far less likely to have problems than a non-wipe install.

Left to right: status icons let you easily see the backup status of apps, selecting which apps to include
in a batch operation, and filtering the view to quickly see the apps that need backing up and so forth

There are some other really nice touches too, like the ability to sync your backup data to your dropbox - even if you lose or destroy your device your backups will still be safely nestled in the cloud. I tend to use the Dropbox backup feature most to facilitate transferring save games from my tablet to my phone and vice versa (seriously Android games makers you should be making save game sync a feature in your games!).

It's quite easy to do, lets work through an example; let's say we're transferring Zombieville save data from device A to device B.

Not a bad wee game either!
  1. First, make sure each device has TB backups for Zombieville. 
  2. Use a file manager and browse to the TB backups folder in each device. 
    1. You'll see that each backup has three files, as you can see in the picture here for Mika Mobile's Zombieville (looking forward to the sequel Mika Mobile! The trailer looks gangbusters!). 
    2. You'll also note that in each device TB assigns a slightly different filename to the backup data. 
  3. Make sure device A's TB backup is sync'ed to Dropbox. 
  4. Download the two non-APK backup files for Zombieville from device A onto device B via Dropbox. 
  5. Rename them to match the filenames of device B's backup, and then copy them to the TB backup directory, overwriting the existing files of the same name when prompted. You now have the same save game data on both devices.

Despite all these great features there is still more depth to TB. I'm not going to cover it exhaustively here by any means, but TB will also let you remove system apps and bloatware that is otherwise difficult to rid from your device, or just freeze them so they are still present but aren't active (allowing the option for defrosting later, should you need them, or should their inactivity cause unforseen problems). Of the two of them I'd suggest just using freeze, unless you've got very reliable confirmation that removal of a system app is 100% safe, because it's not always easily predictable how the manufacturer may have linked functions of that app to other aspects of the devices performance.

Never fear, after clicking freeze
you'll have a chance to choose
which apps you freeze!
Freezing apps can be very useful for a number of reasons. Principle amongst them would be battery savings - some system apps remain active even when never used and can contribute considerably to battery drain. Prime examples would be WiFi Sharing and the Social Hub in the Galaxy S II, which were causing massive battery drain for many users (Galaxy S II owners can go here to get a very thorough guide for applications that can be frozen without deleterious effects). At times certain system apps have undesirable behaviours, such as the stock messaging app in the Galaxy S II, which annoyingly wakes the screen every time a text message is received. I simply froze it with TB and installed an alternative, problem fixed.

Before concluding this discussion of Titanium Backup I should point out that the app also has the ability to save system settings (ringtones, WiFi network passwords, screen brightness settings etc etc). While the facility is there for this, and it sounds really attractive, my advice for beginners is to refrain from making use of this particular feature as restoring system settings across different ROMs can often lead to problems.

I know I could say a lot more about Titanium Backup, but hopefully you know enough now to know why it's worth every penny of the Market's asking price if you own a Rooted Android handset or tablet. No doubt readers will have their own uses for Titanium Backup that I've not covered here - if you think my post is all kinds of fail for leaving your favourite feature out feel free to let me know in the comments below.

Now you have the tools to practice safe-flash, we can move on to how to install a custom ROM in the next [At Your Own Risk]. Catch you there!

[UPDATE] I realised after posting this one that there was one further important thing I should mention in terms of device backup - backing up the /EFS folder in the system area of the device. The EFS folder contains lots of information vital to the functioning of the phone like the IMEI number, and bluetooth and WiFi MAC address. If you corrupt or otherwise damage EFS when you're busy modding your device you will have a serious problem on your hands, so let's avoid that shall we? Once you're Rooted get a file manager that can use your Root privileges to access the system directories of the phone - I recommend Root Explorer. Find the /EFS folder and copy it - copy it to the external SD, and ideally leave nothing to chance by also remotely backing it up with something like Dropbox or excellent newcomer Minus.