Chapter 11. Introduction to iCloud

Cloud computing has been heavily hyped, but at least in the consumer marketplace, uptake has been slow or nonexistent. Not many people have understood the advantages. iCloud has the potential to change that. This is cloud storage for the mass consumer market, and Apple has gone to great lengths to make things as seamless as possible for the user. However, that means there is an increased burden on the developer.

How Can I Use iCloud?

There are two main mechanisms to iCloud-enable your application. If you want to share small amounts of configuration data between instances of your application, you can make use of iCloud’s key-value storage. However, the space available to use key-value stores is limited to just 64 KB. For larger amounts of data, you should use iCloud’s document storage.

Adopting iCloud for storage will require changes in the data model and how it tracks and manages files, especially when it comes to detecting and dealing with conflicts between file versions. Resolving conflicts is the job of your application and, except in the case of key-value storage where last value set for the key is always regarded as the current value, this needs to be done manually by you.

Depending on your application, this might mean that you must also make changes to your user interface.


The iCloud framework is aimed at file management. At least at the present time, there are no standard user interface elements, like those available for the camera roll and ...

Get Learning iOS Programming, 2nd Edition now with O’Reilly online learning.

O’Reilly members experience live online training, plus books, videos, and digital content from 200+ publishers.