About the Camera and Photo Library
iOS provides two technologies for taking pictures and movies.
UIImagePickerControllerclass provides basic, customizable user interfaces for taking pictures and movies and for giving the user some simple editing capability for newly-captured media. Use an image picker controller when you do not require a fully-custom solution.
The AV Foundation framework provides flexible and powerful classes you can use, along with UIKit, to create fully-customized still image or movie capture for your app.
With either option, you can use the Assets Library framework to manage media metadata such as GPS location information.
Similarly, iOS provides two technologies for providing a user interface for picking saved pictures and movies from the user’s photo albums.
UIImagePickerControllerobject as a media browser to let the user pick an item from their photo library, using a basic, system-supplied user interface.
Alternatively, you can create a fully-customized picture and movie browser using the Assets Library framework along with UIKit.
This document explains how to use an image picker controller for taking pictures and movies, and for choosing saved media. The steps are very similar for both tasks, as explained in this document’s articles.
To learn how to use the AV Foundation framework for fully-customized media capture, see “Media Capture” in AV Foundation Programming Guide.
For details on the Assets Library framework, which supports the creation of fully-customized media browsers, see Assets Library Framework Reference.
Organization of This Document
This document includes the following articles:
“Taking Pictures and Movies” explains how to instantiate an image picker controller with a camera interface, and how to obtain the newly captured media when a user takes a picture or movie.
“Picking an Item from the Photo Library” explains how to use an image picker controller as a media browser, allowing the user to pick an item from the device’s photo library.
© 2012 Apple Inc. All Rights Reserved. (Last updated: 2012-07-17)