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.

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 on Apple’s servers. Apps identify which file storage container or key-value pair database they want to access, and the operating system takes care of the rest.

In the case of files, your application determines the location of a container folder, the contents of which are synced to the network. When you copy a file into ...

Get Learning Cocoa with Objective-C, 3rd Edition now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.