Chapter 20. iCloud
Introduced in iOS 5, iCloud is a set of technologies that allow users’ documents and settings to be seamlessly synchronized across all the devices that they own.
iCloud is heavily promoted by Apple as technology that “just works”—simply by owning a Mac, iPhone, or iPad, your documents are everywhere that you need them to be. In order to understand what iCloud is, it’s worth taking a look at Apple’s advertising and marketing for the technology. In the ads, we see users working on a document, and then just putting it down, walking over to their Macs, and resuming work. No additional effort is required on the part of the user, and users are encouraged to think of their devices as simply tools that they use to access their omnipresent data.
This utopian view of data availability is made possible by several very large data centers that Apple constructed in the early 2010s, and a little extra effort on the part of you, the developer.
iCloud also supports syncing Core Data databases. However, Core Data and iCloud syncing is a huge issue, and implementing and handling this is beyond what we could cover in this chapter. If you’re interested in learning more about this, take a look at Marcus S. Zarra’s excellent Core Data, 2nd Edition (O’Reilly).
In this chapter, you’ll learn how to create applications that use iCloud to share settings and documents across the user’s devices.
What iCloud Stores
Simply put, iCloud allows your applications to store files and key-value pairs ...