announced yesterday at WWDC as a part of iOS 5, one of the more interesting options now available to developers is access to iCloud. Much more than just a MobileMe replacement service, the new iCloud will store and sync music, photos, apps, calendars and documents to all your devices, including your iPhone, iPad, iPod Touch and even Mac and PC.Of all the new features
But the service isn't being limited to Apple's own products, as it turns out - developers can use iCloud with their own mobile applications, too.
What Does iCloud Do?
By default, users' "everyday" apps will be automatically enabled for iCloud with iOS 5, including iTunes, Contacts, Calendar, Mail, Photos (now called Photo Stream), iBooks, iWork and iTunes. iCloud will also perform daily backups of personal data, like text messages, MMS messages, device settings, application data and more, all over Wi-Fi. That's great news for consumers, of course.
However, the exciting part of the iCloud announcement for developers is the new iCloud API. With this, Apple is allowing third-party application developers to use the service so they can store their apps' documents and other key value data in iCloud. Both Mac and iOS Developer Program members can set up iCloud for use with iOS, OS X Lion and Windows now and can begin making their apps iCloud-enabled. Not only will this new API provide developers with a place to keep data stored "in the cloud," it will also provide them with access to sync and backup services.
2 Ways to Use the API: Documents or Key Value Data
As noted above, developers can tap into the iCloud in two ways - either for storing actual documents, or for storing key value data. This latter option lets apps store small amounts of data, like the application state or settings, in iCloud. That means users will have a more seamless experience when moving from one device to the next, or when upgrading from one old device to a new one.
For example, iCloud could be used to set up a new device with all your apps, and then also configure those apps the way they were when you last used them on your old device. That's a step ahead of what Google offers now with Android. With the newest version of Android, apps will sync to new devices when you sign in with your Google account. (This seems to be hit-or-miss for me, though - does it not see the apps moved to SD?).
Once your apps are synced and installed on your new Android phone, you have still have to sign in with your user account information all over again. The data stored within the apps is gone, too - it's left behind on your older device, unless the developer was using their own backup and restore functionality or syncing service. With iCloud, however, the transition would be seamless.
The iCloud service will handle all the details of syncing, backing up and restoration including version control, conflict resolution, change notifications and security.
And with less hassle, users will likely install more apps, keep more apps and continue to use more apps. If implemented properly, it sounds like users won't ever be prompted to "sign in" again to the app, after the initial set up is complete. (Full details of how this all works will have to wait - only registered developers have access to API information and documentation at this time).
So, what will iCloud mean for other cloud players, including storage and sync services like Box.net or Dropbox? And what about the lesser-known startups who were building out similar services of their own? Well, it looks like Ashton Kutcher thinks he knows.