Introducing XDA:DevCon – A Conference For Developers By Developers
XDA Developers Android and Mobile Development Forum
Forgot your password?
 
Post Reply+
Tip us?
 
sickbox
Old
#1  
Senior Member - OP
Thanks Meter 0
Posts: 253
Join Date: Dec 2009
Location: San Diego, CA
Default [HOW-TO] Manually backup 3rd-party application settings and data--by cyricc

From the original post by cyricc in the G1 Android Development forum:

HOW TO: Manually backup 3rd-party application settings and data

I just didn't want to be the guy posting only a link. Please post any questions, comments, or thanks in the original thread I deserve NO CREDIT for this post.

##############################

This tutorial will explain how to backup application data and settings for 3rd-party apps that do not have an export/import settings feature. Looking to upgrade your ROM but don't want to lose your todos/highscores/whatnots after a data wipe? Then read on..

(I've never used apps to SD, so I'm not completely sure how the data is stored with that. I'm assuming the entire data partition is moved to the SD though, so the procedures outlined in this guide are not necessary / do not apply to apps2sd)

Tools needed:
adb

Backing up settings
Run a adb shell in the command prompt and navigate to /data/data
Code:
c:\android-sdk-windows-1.5_r1\tools> adb shell
# cd /data/data
Find the folder of the app whose settings you want to backup. In android 1.5, M/SMS are stored in com.android.providers.telephony and bookmarks are in com.android.browser. For third party apps, you can use ls to list all installed apps and find your app folder manually, or use find - say I want to find the app folder for the Astrid todo app:
Code:
# ls
<.....lots of directories....>
com.timsu.astrid
<.....more directories....>
# find *astrid* -maxdepth 0
com.timsu.astrid
Now open a separate command prompt and use adb pull to copy the application's data folder to your computer. This does not copy the app itself, only its saved data and settings. App .apks reside in /data/apps, which you can also adb pull out if you want. In this example I pull out settings for Astrid:
Code:
c:\android-sdk-windows-1.5_r1\tools> adb pull /data/data/com.timsu.astrid d:\desktop\com.timsu.astrid
Feel free to replace d:\desktop with the location of your choice, of course. Repeat the above for each app folder you want to backup.

Restoring settings after a wipe
First thing to do is reinstall the apk, from sdcard, adb install, market, whatever. After the app is installed, you can restore settings in one of two ways: the easy way or the hard but safe (paranoid) way.

The Easy Way:
This quick and dirty method will give everyone full read/write/execute permissions on the application's settings/data. This is normally a Very Bad Idea with a normal linux computer, but realistically there is very little risk of this posing any real security issues on a device like a phone.

First, adb push the settings into the data folder, overwriting the app's stock settings (in this example, the astrid data I backed up) then adb shell into the phone and navigate to /data/data:
Code:
c:\android-sdk-windows-1.5_r1\tools> adb push d:\desktop\com.timsu.astrid /data/data/com.timsu.astrid
Done
c:\android-sdk-windows-1.5_r1\tools> adb shell
# cd /data/data
Now give full permissions to the app's data folder and its contents:
Code:
# chmod 777 com.timsu.astrid
# cd com.timsu.astrid
# chmod 777 * */*
And that's it. Launch the app and your settings/data should be restored.

The Hard Way
I'm not going to go into this in detail because if you're reading this, you probably know the commands to do this anyway. After you reinstall the app, the general idea is to run ls -l on the stock app data directory and its subdirectories to display the owner and permissions of each file/folder as setup by the android system. Write these down then adb push the backup app data folder in, which overwrites everything with directories and files owned by root. Then use chown and chmod to restore the original owners and permissions for each file and directory. Needless to say this can be quite a hassle if you're dealing with more than a few application backups.
//sickbox
 
ECLIPS3
Old
#2  
ECLIPS3's Avatar
Senior Member
Thanks Meter 2
Posts: 331
Join Date: Jan 2010
Location: Rochester, NY

 
DONATE TO ME
i made a script that copies ALL of the applications off of the phone as a backup to a folder on your sd card. the sd card MUST HAVE a folder called "app" in order for this to work.

Code:
@ECHO OFF
adb shell cp data/app/* /sdcard/app
pause
then here is one to reinstall ALL of the apps from that "app" folder back onto your android, keeping the update notifications.

Code:
@ECHO OFF
adb remount
adb shell busybox install sdcard/app/*.apk /data/app
pause
exit
either type those commands into a command prompt or you can make a .bat file and put those commands in.
Rooting your phone? Backing up and reinstalling apps?
Use this application made by ECLIPS3 and Jamezelle

Web Based IRC Chat

Alternate 1 click root method by jcase:

http://forum.xda-developers.com/showthread.php?t=742228
 
Post Reply+
Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts
BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Go to top of page...