Posts

5 Challenges for App Developers Implementing iCloud Sync

We are proud to say that LifeTopix is among the first and very few apps that support automated device-to-device sync (files, data changes, everything) utilizing Apple’s exciting and brand new iCloud technology. The challenges were many, but as a bold app development team that tries its hardest to deliver what our users want, we plowed through it, and our 4.0 update is now in the hands of our delighted users! Get LifeTopix 4.0 with iCloud support from the App Store to iCloud Sync in action – and dramatically organize your life!

iCloud became available fairly recently with iOS 5.0. Kudos to Apple for bringing forth a great new technology with so much potential for users and app developers alike. However, as I mentioned, there were also many challenges for developers. Feel free to contact me if you wish to learn more about how we overcame them to make sure our app remains rock solid. I cannot reveal any information that is confidential under the iOS development program, but share the general approach we took. It is truly a powerful and exciting technology that does so much of the heavy lifting for the developers.

I’ve listed some of those challenges here:

  1. Few full-fledged working examples due to the newness forced us to experiment a lot to:
    • learn the bits and pieces so we could gain a clear overall picture
    • determine sequences to follow for turning iCloud Sync on or off
    • develop a way to allow users to reset iCloud Sync for our app if/when things seem wrong
  2. Somewhat limited direction as to the optimized logic for sharing files contained within the app across devices led us to discover a few things on our own:
    • when to download files, thumbnails
    • when to upload new files, photos, voice notes, videos
    • how to deal with existing files on both devices
  3. Guidance on app data sync (using Core Data) solidly across devices – we determined:
    • the best usage model of core data relevant iCloud APIs
    • how to deal with and migrate existing data in app
    • what to expect in terms of timeliness of core data sync
  4. Applicability of the key-value feature in iCloud and its relation to:
    • expected lag time for inter-device communication
    • a solid device-to-device communication approach
  5. Submission of an iCloud-enabled app to the App Store:
    • proper iCloud related entitlements
It would have been a lot of development effort to implement device-to-device sync on our own – we are truly thankful that iCloud came along and made that powerful feature so much easier for us to implement. The Apple developer forums were extremely helpful, but ultimately it was our perseverance that enabled us to string everything together in a way that works. Our best wishes to fellow app developers and our users who ultimately are the biggest beneficiaries of this exciting technology. iOS just keeps getting better!

 

Note: App Store, iOS, iCloud and Apple are copyrighted terms and trademarks of Apple Inc.