[This is part of the Android Diary.] A commenter on that Tasty Words piece asked about the practicalities of switching one Android device for another. It’s a little more subtle than you’d think.
Basically, there are two places that an Android device can store data: The micro-SD card, and the internal storage. Internal-storage space is usually at something of a premium.
What Moves · Typically, when you get a new phone, you’re going to move the micro-SD over to it. This means that your music and photos and videos will all be right where they used to be.
It turns out that quite a few things are in internal storage, including your contacts and calendars. Those won’t be there on the new phone when you start it up, but because of the fact that Android syncs with Google, they’ll all show up in a while, depending on how much you have and how fast your network is.
What Doesn’t Move · Your call logs and SMS conversations and so on just aren’t coming over. I found that kind of irritating; in particular, partly for sentimental reasons, I miss all those SMS conversations with friends and family.
Applications · You’ll have to re-install all your applications. This might actually be a plus if you realize that there are a few you don’t use any more and needn’t reload.
Where it gets sticky is application data, and now I’m going to speak from
the developer’s point of view. My own app has three different kinds of
storage: Preference settings, the cookie-crumb trail of where you’ve been, and
any audio you’ve recorded at one of the waypoints. The preferences are
internal storage and didn’t make the trip. The audio was on the SD card
(because in my code, I explicitly put it in a file whose pathname started with
/sdcard/) and so it came across. The cookie crumbs were in an
SQLite database, and it turns out that those live (by default, at least) in
internal storage; so I didn’t get them. Now, it turns out that the app is
supposed to persist them to an AtomPub server in the cloud, but I
hadn’t got that quite debugged, so I lost them.
Anyhow, if you’re an Android developer, you can count on it that your users will upgrade phones regularly, so you have to have figured out how you’re going to make sure the app’s data gets upgraded too. Silently and automatically persisting everything into cloud-space seems to me like the obvious right answer, but then I’m prejudiced.
Comment feed for ongoing:
From: Niall Kennedy (Aug 22 2009, at 22:53)
The new Google Listen application seems to sync its state over Google App Engine. When you start the application it will ask for permissions to your Google App Engine account (something I had never seen before). When I erased my Ion and started over again I had Listen and all my settings downloaded to the phone after initial setup.
Something different to check out if you have not already.
From: Andrew Molyneux (Aug 23 2009, at 01:12)
To give Apple their due, this is something that Just Works on the iPhone.
A friend of mine recently dropped his iPhone, cracking the screen. While it was being repaired, he borrowed a friend's spare. He swapped the SIM card, restored from his latest backup and the borrowed phone became his phone. Contacts, SMS conversations, Pac Man high score, the lot :-)
Of course, there are (ahem) tradeoffs involved. Big ones. Especially if you want to code for your phone and your weapon of choice is anything other than Objective-C... but for the average customer, this kind of capability is a big deal.
From: Thomas R. Hall (Aug 26 2009, at 18:37)
I also don't get why Bookmarks aren't copied over. Those really should sync up with Google Bookmarks.
Anyway, you can get a copy of your SMS messages off of the G1 by using SMS Backup: http://code.google.com/p/android-sms/
It backs up your SMS messages to a Gmail account via IMAP. I used it successfully in my G1 with Wifi only (had already moved the SIM to the myTouch 3G).
From: Jordi (Sep 16 2009, at 03:11)
You are working only with default, "official" ROMs. If you were working with any ROM that has Apps2SD (most of them), the switching of phones would be much, much better. Basically, the directory /data/ is on the SD card, so if you switch SD cards, everything switches. I've never done it personally because I only own one android phone, but moving /data/ should just work.