The Abysmal State of Backup Options on Android

“Backing your shit up” is hard when nothing is built for being backed up; the apps and the Android platform is simply not built to backup nor recover data.

This is a frustrated article originating from all sorts of bad experiences when desperately trying to backup valuable data I have kept on and wanted to transfer between my many Android phone. “Valuable data” as mentioned in this article ranges from text messages and photos to high-scores in games; and logins, settings, and data in apps.

This article refers to the state of backups on Android 4.4.4 “KitKat”. An update for Android 5 “Lollipop” will be available at a later date.

Built-in option

The defacto option for advanced users is the built-in adb backup system part of the development stack. This requires the device to be set in developer mode and wired up to a computer. It is also flagged as untested and unsupported. My testing also shows that it frequently fails to backup (hangs midway through), fails to restore apps and app data for many apps (likely the app’s fault), and does not support paid apps nor their data.

Shuffling along to the App Store, there are a few backup solutions available. Most of the apps claiming to be backup apps—and as this is the Google Play App Store—are of course junkware that does not actually provide any kind of backup functionality.

Non-rooted options

These alternatives will work on any devices with a recent version of Android. An explanation of “rooted” follows in that section.

Google Backup

… is a joke. The built-in solution is available through settings for anyone who login to a Google Account. It only works with apps that specifically integrate with it. Very few do. The few that do does not even synchronize the majority of their data or settings. It cannot be trusted to keep all of your data, and app developers do not seem to care to support it.

This should not in any way be considered a backup service. The service should be named “send Google some data apps may volunteer” and with a footnote “oh, and when it is time to recover the data we may choose to not recover any of it”. Not being able to sync to a server under your own control is also a showstopper for enterprise and privacy minded users alike.

Users are not given any insight into what is backed up and what is not. They have to trust each app developer to make good choices on their behalves on what to backup and what not to. The choice they make seem more often than not to be “let us backup the unique installation key for statistical purposes, and nothing that benefits the user”. Only when its time to recover the data will the user learn whether they have lost data they cared about.

Do not bother with enabling this service. Disable it and save the bandwidth and battery-life expenditures for other endeavors.

Helium

Helium is essentially a front-end for adb backup. You have to connect to a PC and install the adb drivers and a little utility program to get it working. Once setup, you unsurprisingly have the same problems and limitations og the adb backup system. Additionally, you can sync your broken and partial backup to another Android device on the same wireless network or to the servers of DropBox, Box.net, and Google Drive. Your own servers are not cool enough to receive the backed up data directly.

Rooted options

Rooting your device means that you have reset the device and have replaced the standard system with another system. It would be synonymous with replacing Windows on your PC and installing Linux instead. You would definitely know if your device has been rooted and the below solutions are even an option.

Online Nandroid Backup

Nandroid is a system that enables your to make a carbon-copy of the entire device. Including absolutely all user-data and the system itself. Online Nandroid is an app that allows you to schedule and automate these backups. These backups are very large. You will need to have more than half the device’ storage space empty in order to create one.

Online Nandroid will store the file on your device in a folder you have specified. This is a large file which makes it difficult in itself to manage. It can be combined with other apps that will automatically transfer the file off the device and onto a server.

The backup process can be automated to run a schedule. Jury-rigging it to run a upload through another app upon successfully backing up becomes complicated. Like adb, the backup process sometimes simply stalls indefinitely. Podcasting and other apps that may be downloading larger files in the background while the backup is running, seem especially prone to trigger such problems. Trusting the backup to run unsupervised on a schedule seems foolishly optimistic.

This is by far the most complete and comprehensive backup solution. It is what you get with iOS and what you would expect Android to have provided our of the box. This implementation, is impractical and the learning curve and required pre-knowledge is very high.

Titanium Backup

Everybody seems to love Titanium Backup. This love and trust is misplaced. When someone says a pieces of software looks like a Christmas tree, Titanium Backup is what they are referring to. The app looks sketchy and it is frankly very hard to love anything about it except its promises.

The first challenge is beating the many options into submission and setting up a configuration you believe will fulfill your backup needs. Successful and sane configuration will take a few attempts to get right.

Like with Online Nandroid, there are no built-in option to transfer the backup blobs over the network. The companion/upselling app Titanium Media Sync can be used to optimistically transfer the backups over the network. The companion will not clean out the local copy of the large backup files upon completing.

Titanium claims to backup paid apps (encrypted) and their data. And it does indeed deliver on this promise. For the most part it can restore these app too! Larger paid apps are not restored nor are any user data belonging to any paid apps.

As there are no good options available, I cross my fingers and hope I don’t loose my phone. Or that the memory card(s) die. Or that it randomly explodes.

2 comments

  1. I made a TWRP backup on a rooted Lollipop tablet which worked. A small factory update soft bricked the tablet into a boot loop. I was eventually able to restore the entire system with the backup, but it took a while because there were no good instruction on how to restore it on a tablet with a locked bootloader. TWRP should be added as the default bootloader on all Android devices. I am thankful that it did eventually work.

  2. thank you i wanted to write the very same article you saved my time now 🙂

    indeed backup situation is incredible horrible.
    there is no, whatsoever useful software out there.

    even iam happy with just backup it to google and not even thinnk about having it on my own servers. still no joy here.

    here is the thing, a few apps do work relativly simplistic their job.
    they dont however
    – provide an errorlog in case of one
    – mark broken backups
    – have incredible trouble to backup from an encrypted device
    – versioning – hell what i was thinking, multiple versions of an backup with a simple threshold ? nanana only the last one is important right, so lets overwrite that shit

    really i dont wanna connect my pc everytime i backup, but even that i would accept by now but noooo there is no fucking backup program that actually really works

    and for titanium backup – its beyond horrible. i dont know which drugs those devs are on or if they are just poor retarded kids in some mental institution but you cant do that.
    and no iam not a simple user just overhelmed with a complicated app. iam an it pro for over 20 year, mainly working in enterprise software/unix linux stuff like that so iam used to sketchy overcomplicated solutions

    but titan is just useless the way they do things. why did no app dev ever looked at any normal backupsoftware and take the basics from there.

    make a backup set – what to backup and where to backup too, how many versions should it contain
    shedule your backups sets
    report anything happening
    done

    is this really so hard?

Leave a Reply

Your email address will not be published. Be courteous and on-topic. Comments are moderated prior to publication.