If you have used iOS for a while, you may have noticed that in places such as the notification center, Siri suggests certain apps you might want to use at a certain time. Siri can do this because it continuously learns about the apps you use, when you use them, and where you are when you use them. By learning your behavior, Siri can make accurate predictions about what you might want to do next.
With the introduction of iOS 12, Apple has announced a new, powerful feature for Siri. This feature is called Siri Shortcuts, and it allows app developers to teach Siri about certain actions that a user performs in their apps. Siri then learns about these actions and offers them to the user at the appropriate time.
If you book a taxi home every day at a certain time, and the app you use has implemented Siri Shortcuts, Siri can offer you a shortcut to quickly book your taxi without having to go into the app. This is a great feature for users because it allows them to focus on the things that matter to them, without having to perform repetitive tasks inside of an app.
In this section, you will implement Siri Shortcuts for the Hairdressers app to enable users to quickly book appointments. There are two ways for apps to support shortcuts:
- Through NSUserActivity objects
- By donating INInteraction objects
First, you will implement the NSUserActivity method for adding shortcuts. Then you will define your own custom intent, so you can donate activities through INInteraction objects, and handle shortcuts in the background by implementing a second Intents Extension.