There are several ways for apps to integrate with iOS. These integrations are always built using app extensions. An app extension is an isolated section of your app that can be instantiated and used by the system as needed to provide certain functionality for users. In iOS 12, there are 25 different ways for apps to integrate with iOS. Not every app can or should implement every possible extension, but a proper integration with iOS can truly make your app stand out. The following screenshot shows a selection of available extensions in iOS 12:
In this chapter, you will implement an Intents Extension and an IntentUI Extension. These extensions are used to communicate with Siri and to provide a custom UI for the Siri integration. Before you implement your extensions, let's see what extensions are and how they work.