Take the 2-minute tour ×
Android Enthusiasts Stack Exchange is a question and answer site for enthusiasts and power users of the Android operating system. It's 100% free, no registration required.

I know I'm asking for the close-to-impossible -- as a real full-backup certainly requires root permissions. But still there are many folks around not wanting to root their devices -- afraid of voiding their warranties or bricking their devices, or just not having their devices supported by any rooting method.

I also know there were a lot of questions asked already on this topic, and I checked all of them having the backup tag -- none covers the entire topic, all just have pieces, and especially people new to Android (but other non-power-users as well) would have a hard time figuring out the best way.

So I want a detailed canonical answer to the question:

Not involving root-solutions, how to achieve a backup as close as possible to a full backup?

Please do not give simple one-liner answers like "Use app xyz [full-stop]." If mentioning an app (and I doubt a single app would be the answer here), include what parts are covered by it -- as well as ideas on how to fill the gaps it leaves. (And to make it absolutely clear: I know the first thing coming to mind is Titanium Backup -- I use it myself, but this does not apply here: This question is strictly about methods for non-rooted devices!) Moreover, the answer should be as generic as possible in terms of applying to a wide range of devices (i.e. it should not be resticted to one device or manufacturer).

I already mentioned having investigated all questions here tagged backup. These will certainly be helpful providing details for answers here, so I will list up the topmost ones concerning my question:

All these provide some details for my question (so feel free to get inspired by them) -- but I feel there are still details missing. Also it would be helpful to have a summary -- say, an answer including the full description of "the maximum possible".

A last criterium: While I'd consider cloud-based solutions ligit, I'd favour local solutions. If you can provide both: all the better. But some people value privacy quite high (I'm one of them), and thus would not trust their data to some cloud service.


Thanks to Ryan, we now have a solution for a really complete backup of all apps and their data -- which I didn't dare to hope for! The only disadvantage: His solution only works for less than 10% of all Android users; namely those whose devices are running at least with Android 4.x.

So again, I ask the close-to-impossible: Any solutions applyable at least on Gingerbread (2.3.x) or, better, even Froyo (2.2.x) -- so they cover the majority of current devices? These solutions may involve multiple tools (try to keep it as simple as possible though; think of your mother to follow your instructions ;)

And keep in mind: NO ROOT!


To further motivate high-quality answers (and hopefully avoid low-quality ones), I will be a harsh one here: As I rarely do, I will down-vote answers not fitting the mentioned criteria on one end -- but on the other end, I will setup a bounty for the best answer (which cannot be done immediately, but earliest after 2 days).

share|improve this question
3  
what version of android are you looking to backup? because with 4.x there is the 'adb backup' solution that works for non-rooted devices. –  Ryan Conrad Aug 26 '12 at 14:45
1  
As I'm not looking for myself (my devices are rooted, and so I can use NANDroid backups as well as Titanium Backup), this would be worth an answer -- as it would apply to everybody already having 4.x on his/her device. How much would it cover -- and what about gaps left behind, if any? Please also point out that it needs the SDK installed on the computer (including its pros and cons for unexperienced users). –  Izzy Aug 26 '12 at 15:03
1  
I created a question - android.stackexchange.com/questions/33479/… to followup for device with Android 2.3.x and below cause I notice that the solution is for Android 4.X devices –  Jack Nov 16 '12 at 1:35

6 Answers 6

up vote 102 down vote accepted
+100

Solution Available for 4.x Devices:

For 4.x devices there is a solution called "adb backup". This makes use of adb so you have to have the Android Software Development Kit (SDK) installed on your computer.

NOTE: This solution will not back up and restore contact, SMS or calendar information

The options for the adb command are:

adb backup [-f <file>] [-apk|-noapk] [-shared|-noshared] [-all] [-system|nosystem] [<packages...>]
  • -f : the path of the *.ab file that will be saved on your computer. This file is a compressed file that contains an archive of the data/apks from your device.
  • -apk|-noapk : indicates if the *.apk files should be backed up (default is -noapk)
  • -shared|-noshared: enable/disable backup of the device's shared storage / SD card contents (default is -noshared)
  • -all : indicates that you want the entire system backed up. you can use the packages filter to just backup specific packages, or use -all for a full system backup.
  • -system|-nosystem: indicates if all the system applications and data are included when backing up. (default is -system)
  • <packages> : this is where you can list specific packages to backup. Use these if you want to back up only specific applications. If using -all, you do not need to specify packages.

How to backup your device:

From the command prompt you will need to be able to locate both the adb command and your backup file. The easiest way to do this is to run the adb command from the directory where adb is located.

In Windows Explorer navigate to where you installed the Android SDK and SHIFT+RIGHT CLICK on the platform-tools folder. shift+rightclick

This will open a command prompt (your window will look different than mine).

In Mac's Terminal you can type cd and then drag the folder platform-tools folder from finder to the terminal window and the path will be inserted. Hit and you will be in the right place.

In Linux, I hope you know how to locate and cd to the parent directory of the adb command. You are using Linux after all.

From here type the following command:

Windows:

adb backup -apk -shared -all -system -f backup08262012.ab

Linux & Mac

./adb backup -apk -shared -all -system -f backup08262012.ab
## Notice that -all doesn't mean ALL. See the big bold NOTE at the top of this answer.

(if you want to store the backup in a different directory, include a path for the ".ab" file as shown in the screenshot below.)

cmd

You will then be prompted on your device for a password (this is used to encrypt the backup):
backup screen

To restore, it works almost the same way.

Windows:

adb restore backup08262012.ab

Linux & Mac

./adb restore backup08262012.ab

Then you will be prompted for your password to restore on the device: restore screen


Now for the shameless self promotion:

Droid Explorer (v0.8.8.7+) will be able to handle this for 4.x devices. While Droid Explorer is currently optimized for Rooted devices, this functionality will work for non-rooted devices as well.

Droid Explorer will do full backups of the device and save them in %USERPROFILE%\Android Backups\. Within that folder is a folder named for the device, and inside that folder are the backups.

de backup

Double clicking on the Android Backup file will allow you to restore your device from the backup file.

share|improve this answer
1  
BTW: Adding to your solution, just today I found a post on the XDA News: Ultimate Backup Tool, No Root Required. This "Ultimate Backup Tool" is just a simple .bat file calling the ADB commands you mentioned (Pastebin) -- and thus can serve as "inspiration" to Linux/Unix/Mac friends to create a similar shell script ;) –  Izzy Aug 27 '12 at 8:34
3  
Yes, it does data. Actually, it does the data only by default. The only snag is that it is for 4.x devices and it is a pretty much undocumented feature of adb. –  Ryan Conrad Aug 27 '12 at 11:41
2  
Is there any type of data that the ADB Backup does not back up and restore? Would this be the best procedure to go from non-rooted to rooted without any data loss? I'm hoping it is as simple as 1) ADB Backup 2) Root the phone 3) ADB Restore. –  tim11g Jul 2 '13 at 22:13
2  
Has anyone verified that this type of backup will work for rooting? Specifically, if I back up, root the phone (which wipes it), and then restore the backup, will the phone still be rooted? Or will it revert to the state it was in when I created the backup? –  tim11g Jul 6 '13 at 19:01
4  
! Beware ! adb restore is far from complete, at least on an unrooted stock Android 4.3 on a Nexus 3! A few things are restored, a few not! I checked restoration of some features. NOT RESTORED, basically all the key telephony features: Contacts, sms, ringtone&notification sound, activated input languages (=kbd layouts), ownername (ownername set in first boot wizard is kept instead) PROPERLY RESTORED: Custom vocabulary, wallpaper, launcher icon positions, apps and their settings. Closing statement: This is an unsuited backup solution! Would adb backup complete on rooted phone? –  porg Oct 14 '13 at 0:47

There is an application called Simple ADB Backup.

enter image description here

Simple ADB Backup Backs Up Your Android Phone from the Desktop, No Root Required. Most Android backup tools require root, or run from your phone and save your data to your SD card. Simple ADB Backup is different. The app runs from and backs up your phone's data to your desktop, and does it all without root.

To use Simple ADB Backup, you'll need USB Debugging Mode enabled on your Android device (Go to Settings > Developer, enable developer options, then enable USB debugging) and the utility installed on your desktop. That's about it: just plug in your phone, launch the app on your Windows or Linux system, and choose a backup option. You have the option to back up your entire device, just apps, all data with or without system apps, or even a single app if you choose.

The app also lets you restore backed up data to your device. Before you back up, you'll be prompted to generate a password you'll also have to type into the app on your phone before the backup can begin, but after that, the process runs smoothly. It's extremely simple, completely free, and doesn't require you root first.

Whilst Titanium Backup is a more feature-filled app if you're willing to root (especially if you want a bulletproof backup system for your Android), and MyBackup Pro is great if you're migrating to a new phone and don't want a desktop as a middleman, but Simple ADB Backup is free and apparently so easy to use that even Android beginners can easily and quickly back up their important data.

Simple ADB Backup was released for free over at the XDA Developer forums. Hit the link below to download it there.

http://forum.xda-developers.com/showthread.php?p=36499906

Please Note: This is a new application currently still in Beta

share|improve this answer
    
And also note that, at least according to its name, it probably requires at least Android 4.0 -- as does Ryan's solution. Nevertheless, +1 from me as this makes it easier for those people afraid of the command line :) –  Izzy Jan 15 '13 at 16:58
2  
@Izzy: Yes to clarify Windows/Linux/Android (4.0+) –  Simon Jan 15 '13 at 17:09
    
Thanks for your confirmation, @Simon! –  Izzy Jan 15 '13 at 18:37
    
@Izzy You're Welcome –  Simon Jan 15 '13 at 20:22
    
@Izzy Just came across this article, should I edit it into my answer above lifehacker.com/… –  Simon Aug 19 '13 at 17:09

Technically, you CAN create full Nandroid backup without rooting the device. You just need to flash CWM (or, any recovery which supports Nandroid backup) over USB. For example, you can use Odin (Windows) to flash CWM to Samsung devices after going to download mode, all without touching the Android. So, there's no rooting or root access involved at all.

share|improve this answer
4  
Well, I think what the real question is then, at least how I perceive it, is How can you do a full backup without voiding your warranty. Average users will not want, or even know how, to root, let alone flash a replacement recovery. –  Ryan Conrad Aug 31 '12 at 21:56
1  
@RyanConrad I agree. :) At least, my answer will clear misconceptions.. –  Sachin Shekhar Aug 31 '12 at 22:10
    
You are both correct: Users afraid of rooting will probably be afraid of flashing custom images as well (which might even be impossible considering locked bootloaders) -- I only implicitly thought that to be clear. So technically, Sachin's answer is valid at least for unlocked devices -- though most "standard users" won't apply it. And thanks to Sachin for pointing this out -- it's easily forgotten otherwise. Thinking out loud: Booting into that recovery, one becomes root -- or not? ;) –  Izzy Sep 1 '12 at 14:52
    
@Izzy 1. Locked bootloaders don't always block ROM flashing. 2. Technically, Bootloaders can be unlocked without gaining root access. So, my answer is valid for all devices out there. –  Sachin Shekhar Sep 1 '12 at 19:11
    
@Sachin Thank you! I wasn't aware of 1. -- and with 2. I have some doubts in this context: sure, the unlocking itself must not gain root access. But the custom recovery certainly will -- since without root permissions, how then would it be able to access the partitions to do a NAND backup (aka NANDroid)? –  Izzy Sep 1 '12 at 19:20

Koushik Dutta (aka Koush aka Mr. ClockworkMod) has published Helium Backup, which should make the entire thing possible even without the need of a computer and USB cable:

Carbon Backup

Helium Backup should be able to backup apps and data to SD card, attached USB devices, Dropbox, Google Drive or Box.

This isn't a "full backup" in so far as it comes to system settings, but it does restore application settings and data. It does not backup your internal storage (the user files), so you'll have to backup those files separately.

If you find yourself unable to see your backups in the restore list, some of the backup metadata may have gotten lost in translation. The backup themselves can still be restored, but you'll need some extra leg work to get them.

Edit: For a full-fledged how-to on the usage of Helium, please see How to Backup Apps and Data without Root using Helium Android App (thanks for the hint, Simon!).

share|improve this answer
    
Unfortunately requires Android 4.0, same as Ryan's solution. –  Phoenix Mar 23 '13 at 4:31
    
Sure: Like Ryan's solution, it uses adb backup as backend. –  Izzy Mar 23 '13 at 9:15
1  
@Izzy Just found a nice write up about Carbon: maketecheasier.com/another-way-to-back-up-android-without-root/… –  Simon Sep 14 '13 at 11:52
    
@Izzy I think its been renamed Helium, if i'm correct ? –  Simon Feb 11 at 20:41
1  
@Izzy I thought you'd like it (and the How-to)...... –  Simon Feb 12 at 15:37

We can take the backup of our device without using any apps or without rooting our phone.

Android includes a built-in way to back up and restore the contents of your phone or tablet. All you need is a computer and a device running Android 4.0 (Ice Cream Sandwich) or newer.

Go to adt-bundle-windows-x86\sdk\platform-tools folder and open command promt here.

  1. Make sure USB Debugging is Enabled.

  2. Check that your device is connected by running "adb device".

  3. Now execute "adb backup -apk -shared -all -f C:\Users\UserName\backup.ab".

  4. Unlock your device, provide encrpytion password and your whole device will be backed up.

  5. To restore again simply execute "adb restore C:\Users\UserName\backup.ab".

I have written step by step procedure with screen shots for the same here. Hope this helps!

share|improve this answer
    
Yes. That's what Ryan's answer states right as its start :) But thanks for the additional details and step-by-step guide! –  Izzy Nov 23 '13 at 19:41

This answer is not the hint you dear readers hoped for but the result of my real world tests:

adb backup is far from complete, on a Nexus 3, both under an unrooted stock Android 4.3 and if run with adb root on Cyanogenmod 10.1.3!


A few things are restored, a few not! I checked restoration of some features:

NOT RESTORED: basically all the key telephony features: Contacts, sms, ringtone&notification sound, activated input languages (=kbd layouts), ownername (ownername set in first boot wizard is kept instead)

PROPERLY RESTORED: Custom vocabulary, wallpaper, launcher icon positions, apps and their settings.


These were my requirements, which brought me to the topic:

  1. Maximization of Android privacy
  2. Physical security to prevent drive by downloads (PDF), meaning:
    • bootloader locked, stock recovery, ADB off
    • even more secure with: full disk encryption
  3. Full local backup, no cloud backup (topic of this very thread here)

On Cyanogenmod the situation was a little different: SMS were completely restored, but contacts and call logs still not restored. Even when adb backup and restore where ran with an adb running as root through adb root.


So I will try to use a custom ROM, with root (to get some extra features), a locked bootloader, custom recovery, and only flash the recovery temporarily (theoretically possible from the rooted device with flash_image, but for me this failed too), from which I then do NANDROID backups (or adb backup + special backup solutions for sms/call-logs/contacts) plus custom ROM updates.

share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.