App Extensions

App extensions let you extend custom functionality and content beyond your app and make it available to users while they’re interacting with other apps or the system. For example, your app can appear as a widget on the Home screen, add new buttons in the action sheet, offer photo filters within the Photos app, or automatically upgrade users’ accounts to use strong passwords or Sign in with Apple. Use extensions to place the power of your app wherever your users need it most.

Types of app extensions

iOS, iPadOS, macOS, tvOS, and watchOS support several types of extensions, each of which is tied to a single, well-scoped area of the system — such as sharing, Notification Center, or Safari.

Extension Point Description iOS/iPadOS macOS tvOS watchOS
Action Add custom actions to the share sheet to invoke your app’s functionality from any app.
Audio Unit Create and modify audio in any app that uses sound, including music production apps such as GarageBand or Logic Pro X.
Authentication Services Streamline authentication for users by enabling single sign-on.
Account Authentication Modification Automatically upgrade user passwords to strong passwords, or convert accounts to use Sign in with Apple.
AutoFill Credential Provider Surface credentials from your app in Password Autofill and pull your app’s password data into the Password AutoFill workflow.
Broadcast Setup UI / Broadcast UI Capture the contents of a user’s screen to stream to a video broadcast service.
Call Directory Display caller identification from your appʼs custom contact list so users know who’s calling.
ClassKit Content Provider Update the status of your appʼs activities so that status is visible in the Schoolwork app.
Content Blocker Provide rules for hiding elements, blocking loads, and stripping cookies from Safari requests.
Custom Keyboard Provide systemwide customized text input for unique input methods or specific languages.
File Provider Let other apps access the documents and directories stored and managed by your app.
File Provider UI Add custom actions to the document browserʼs context menu for documents that your app manages.
Finder Sync Keep files in sync with a back-end storage service.
iMessage Allow users to send text, stickers, media files, and interactive messages.
Intents Let users interact with your app using Siri.
Intents UI Customize the interface for interactions with your app in Siri conversations or Maps. 
Mail Enhance Mail by adding custom actions, blocking content, signing and encoding messages, and more.
Message Filter Identify and filter unwanted SMS and MMS messages.
Network Provide system-level networking services such as VPN, proxies, or content filtering.
Notification Center Customize the appearance of your app’s notification alerts.
Notification Service Modify the payload of a remote notification before it’s displayed on the user’s device.
Persistent Token Grant access to user accounts and the keychain using a token.
Photo Editing Allow your app to edit assets directly within the Photos app.
Photo Project Augment the macOS Photos app with extensions that support project creation.
Quick Look Preview Provide previews of documents your app owns so they can be viewed in any app.
Safari Services Extend the web-browsing experience in Safari by leveraging web technologies and native code.
Share Let users post to your social-network service from any app.
Smart Card Token Grant access to user accounts and the keychain using a hardware-based token.
Spotlight Import Make content in your app searchable in Spotlight, Safari, Siri, and more.
Sticker Pack Add custom stickers to Messages.
Thumbnail Display thumbnails of your custom document types in all apps.
TV Top Shelf Help users discover your app by providing Top Shelf content and a description of your tvOS app.
Unwanted Communication Block incoming phone calls using your app’s custom unsolicited caller database.
Virtual Conference Integrate your video conferencing service directly into events on user’s calendars.
Widget Show relevant, glanceable content from your app on the iOS Home screen or macOS Notification Center.
Xcode Source Editor Provide custom editing features directly inside Xcode’s source editor.

Tools and resources

Use Xcode and these resources to build your app extensions.

Download Xcode