App Extensions

Extend your app's basic functionality to other parts of the system.


Extension Support

Use these Foundation classes to manage interactions between your app extension and its hosting app.


The interface an app extension uses to respond to a request from a host app.


The host app context from which an app extension is invoked.

Document Provider


The principal class for the Document Picker View Controller extension.


The principal class for the File Provider extension.

Custom Keyboard


An object that provides textual context to a custom keyboard.


A property that enables a custom input or keyboard accessory view to play standard keyboard input clicks.


The primary view controller for a custom keyboard app extension.


A read-only array of term pairs, each in a lexicon entry object, for use by a custom keyboard.


A read-only term pair, available within a lexicon object, for use by a custom keyboard.

See Also

App Structure

App and Environment

Manage life-cycle events and your app’s UI scenes, and get information about traits and the environment in which your app runs.

Documents, Data, and Pasteboard

Organize your app's data and share that data on the pasteboard.

Resource Management

Manage the images, strings, storyboards, and nib files that you use to implement your app's interface.

Inter-Process Communication

Share data through Handoff, support universal links into your app's content, and display activity-based services to the user.

Mac Catalyst

Create a version of your iPad app that users can run on a Mac device.