Chapter 17. Photo Library and Camera

The stored photos and videos accessed by the user through the Photos app constitute the device’s photo library.

Your app can give the user an interface for exploring the photo library through the UIImagePickerController class. In addition, the Photos framework, also known as PhotoKit, lets you access the photo library and its contents programmatically — including the ability to modify a photo’s image. You’ll need to import Photos.

The UIImagePickerController class can also be used to give the user an interface similar to the Camera app, letting the user capture photos and videos. Having allowed the user to capture an image, you can store it in the photo library, just as the Camera app does.

At a deeper level, the AV Foundation framework (Chapter 15) provides direct control over the camera hardware. You’ll need to import AVFoundation.

Constants such as kUTTypeImage, referred to in this chapter, are provided by the Mobile Core Services framework; you’ll need to import MobileCoreServices.

Browsing with UIImagePickerController

UIImagePickerController is a view controller providing an interface in which the user can choose an item from the photo library, similar to the Photos app. You are expected to treat the UIImagePickerController as a presented view controller. You can use a popover on the iPad, but it also looks good as a fullscreen presented view. (The documentation claims that a fullscreen presented view is forbidden on the iPad, but that ...

Get Programming iOS 11 now with O’Reilly online learning.

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