File Handling

People shouldn’t need to think about the file system while creating, viewing, and manipulating files. If your app works with files, downplay file handling as much as possible.

Instill confidence that work is always preserved unless canceled or deleted. In general, don’t make people explicitly save files. Instead, save changes automatically at regular intervals, when opening and closing files, and when switching to another app. In some cases, such as while editing an existing file, save and cancel options may still make sense for the sake of confirming when the edits are actually captured.

Don't provide an option to create local-only files. Users often expect all of their files to be available on all of their devices. Whenever possible, your app should support cloud-based file storage through a service such as iCloud.

Implement an intuitive and graphical file browsing interface. Ideally, use the system’s familiar document picker for browsing. If you implement a custom file browser, make sure it’s intuitive and efficient. File browsers work best when they’re highly graphical, providing visual representations of files. To speed navigation, minimize gestures, and consider providing a new document button, so people don’t need to go elsewhere to create a new document.

Let users preview files without leaving your app. You can use Quick Look to let people view the contents of Keynote, Numbers, and Pages documents, PDFs, images, and certain other types of files, even if your app doesn’t actually open them. See Quick Look.

When appropriate, share files with other apps. If it makes sense, your app can share its files with other apps through a document provider extension. Your app can also let people browse and open files from other apps. For developer guidance, see Document Picker Programming Guide.