Shortcut est un scénario d'automatisation dans l'application Shortcuts d'Apple, reliant les actions de plusieurs applications et services sans écrire de code. Les Shortcuts se lancent par la voix via Siri, selon un horaire, en entrant ou sortant d'une géozone, en tapant sur un widget ou en touchant une étiquette NFC. Le scénario est créé visuellement via le constructeur Actions par glisser-déposer de blocs. Pour plus d'informations, consultez le Guide d'utilisation Shortcuts.
Points clés
Shortcut est une séquence d'actions (Actions) combinées en un seul scénario pour automatiser des tâches sur iOS, iPadOS, macOS et watchOS. Contrairement à une application normale, un Shortcut n'a pas d'interface permanente — il s'exécute en arrière-plan ou affiche des dialogues rapides uniquement pour la saisie de données. L'utilisateur crée un scénario dans l'application Shortcuts en combinant des blocs de la galerie Actions et le lance d'une simple pression, par la voix ou automatiquement via un déclencheur.
Application Shortcuts — un constructeur d'automatisation intégré d'Apple, disponible sur tous les appareils avec iOS 13+, iPadOS, macOS 12+ et watchOS. La bibliothèque Actions comprend plus de 300 blocs intégrés : système (envoyer un message, appeler, ouvrir une application), multimédia (photos, musique, podcasts), internet (API REST via Get Contents of URL), travail avec les fichiers et documents. La galerie contient des scénarios prêts à l'emploi d'Apple et de la communauté — de l'envoi d'une ETA à un contact au renommage par lot de fichiers.
Bibliothèque Actions est enrichie par des applications tierces via le framework App Intents. Le développeur enregistre des intents dans Intents.intentdefinition, et ils apparaissent automatiquement dans la galerie Shortcuts. Par exemple, Things 3 ajoute les Actions « Créer une tâche » et « Afficher les tâches du jour », tandis que CARROT Weather ajoute « Prévisions du jour » avec des paramètres de localisation.
Shortcuts fonctionne dans le bac à sable iOS — le scénario s'exécute dans un processus en arrière-plan appelé shortcuted avec des permissions limitées. Chaque Action est un appel à un gestionnaire prédéfini qui reçoit des paramètres d'entrée, effectue l'opération et renvoie un résultat. Le système transmet la sortie d'une Action en entrée de la suivante via un pipeline — l'utilisateur voit cela comme des points de connexion bleus entre les blocs dans l'éditeur.
Flux d'exécution d'un Shortcut est linéaire : les Actions s'exécutent séquentiellement de haut en bas. Les branches conditionnelles sont implémentées avec des blocs If — le système évalue la condition et exécute la branche correspondante. Des boucles sont disponibles : Repeat (répéter N fois), Repeat with Each (itérer sur les éléments d'une liste) et For Each. Une erreur dans une Action interrompt tout le scénario à moins qu'un bloc Try/Catch ne soit ajouté.
import Intents
class OrderCoffeeIntentHandler: NSObject, OrderCoffeeIntentHandling {
func handle(intent: OrderCoffeeIntent,
completion: @escaping (OrderCoffeeIntentResponse) -> Void) {
let order = Order(coffee: intent.coffee, size: intent.size)
placeOrder(order) { success in
let response = success
? OrderCoffeeIntentResponse.success(coffee: intent.coffee)
: OrderCoffeeIntentResponse.failure(error: "Order failed")
completion(response)
}
}
}
Chaque gestionnaire Intents est enregistré dans Info.plist via la clé INIntentsSupported. Lorsqu'un Shortcut est lancé via Siri, le système trouve le IntentHandler approprié et l'exécute de manière asynchrone. La réponse est renvoyée sous forme d'objet INIntentResponse contenant un statut, un message et des données optionnelles à afficher à l'utilisateur.
Créer un Shortcut commence en appuyant sur « + » dans la galerie de l'application Shortcuts. L'utilisateur sélectionne des Actions dans des catégories : Applications, Scripting, Web, Fichiers, Santé, Musique et autres. Chaque Action est configurable — champs de saisie, interrupteurs, listes. Après l'assemblage, le scénario est testé avec le bouton Play, et le bloc problématique est surligné en cas d'erreurs. Pour le partage, le Shortcut est exporté sous forme de fichier .shortcut pour envoi via AirDrop ou iMessage.
Variables et Magie Shortcuts prend en charge les variables — les données de sortie d'une Action peuvent être transmises à une autre. Les variables magiques sont déterminées automatiquement : si l'Action précédente renvoie une image, le système la suggère dans les paramètres de l'Action suivante. L'utilisateur peut également créer des variables nommées via le bloc Set Variable et les utiliser à n'importe quel endroit du scénario.
import AppIntents
struct CreateTaskIntent: AppIntent {
static var title: LocalizedStringResource = "Create Task"
static var description = IntentDescription(
"Creates a new task in your to-do list"
)
@Parameter(title: "Task Title")
var taskTitle: String
func perform() async throws -> some IntentResult {
let task = TaskModel(title: taskTitle)
try await Database.shared.save(task)
return .result(dialog: "Task created")
}
}
App Intents est un framework moderne d'Apple (iOS 16+, SwiftUI) qui a remplacé Intents pour les intents personnalisés. Contrairement à l'ancien SiriKit, App Intents fonctionne sans l'environnement d'exécution Objective-C, prend en charge l'asynchrone via async/await et génère automatiquement des dialogues pour Siri. Une struct CreateTaskIntent est marquée avec le protocole AppIntent, et les paramètres sont marqués avec l'attribut @Parameter. Le framework crée automatiquement une Action dans la galerie Shortcuts.
Les déclencheurs Shortcuts sont des conditions sous lesquelles un scénario se lance automatiquement. La configuration s'effectue dans l'onglet Automatisation de l'application Shortcuts. Les déclencheurs sont divisés en personnels (heure, localisation, charge), sensoriels (NFC, secouement), système (ouverture d'application, mode de concentration, connexion CarPlay) et basés sur des événements (réception d'un email, événement de calendrier, notification). Chaque déclencheur peut être configuré pour une exécution immédiate ou nécessitant une confirmation.
| Déclencheur | Condition de lancement | Exemple d'utilisation |
|---|---|---|
| Heure | Heure spécifique, lever/coucher du soleil | Activer Ne pas déranger à 22h00 |
| Géozone | Entrée ou sortie d'une zone | Envoyer « En route vers la maison » en quittant le travail |
| NFC | Contact d'une étiquette NFC | Lancer le scénario « Maison intelligente » au contact d'une étiquette |
| Application | Ouverture ou fermeture d'une application | Rappeler d'éteindre le minuteur en fermant YouTube |
| Concentration | Changement de mode de concentration | Activer le thème sombre lors de l'activation du mode Sommeil |
| Charge | Connexion/déconnexion de l'alimentation | Ouvrir le widget de charge lors de la connexion MagSafe |
L'automatisation est une fonctionnalité clé des Shortcuts, indisponible pour les applications normales sans privilèges de développeur. L'utilisateur configure un déclencheur une fois et oublie — le scénario s'exécute en arrière-plan sans intervention. Par exemple, l'automatisation « Quand j'arrive à la maison, activer le Wi-Fi et désactiver le mode silencieux » se déclenche en entrant dans la géozone de la maison. Le système demande l'autorisation pour l'automatisation lors de la configuration initiale et peut la désactiver si elle est rarement utilisée.
Shortcuts sur macOS — depuis macOS 12 Monterey, les Shortcuts sont disponibles sur Mac. Les scénarios se synchronisent via iCloud entre tous les appareils Apple. Sur Mac, les Actions système sont prises en charge : Finder, Terminal, Automator et AppleScript. Les développeurs macOS peuvent ajouter des Actions via App Intents de manière similaire à iOS.
App Intents est le framework principal pour intégrer une application avec Shortcuts sur iOS 16+ et macOS 13+. Le développeur crée une struct implémentant le protocole AppIntent, décrit les paramètres via des property wrappers et implémente la méthode perform(). Le système enregistre automatiquement l'intent dans Shortcuts, Siri et Spotlight. Pour prendre en charge les anciennes versions iOS (10–15), le framework Intents avec INIntent et IntentHandler est utilisé.
import Intents
class IntentHandler: INExtension {
override func handler(for intent: INIntent) -> AnyObject? {
if intent is OrderCoffeeIntent {
return OrderCoffeeIntentHandler()
}
return .none
}
}
Tester App Intents — le débogage des intents s'effectue via Xcode : sélectionnez le schéma de l'application, passez -intents dans Arguments, et le simulateur affichera une liste des intents enregistrés à tester. Pour tester un Shortcut dans un environnement proche du réel, créez une archive de l'application et installez-la sur un appareil via TestFlight. Les Shortcuts de l'application apparaissent dans la galerie après le premier lancement.
Fonctionnalités avancées App Intents prend en charge les paramètres avec autocomplétion (options dynamiques), la confirmation avant exécution, les intents pour Siri (raccourcis vocaux) et la création de widgets avec boutons de lancement. Indexed intents (iOS 17+) sont des intents que Siri suggère automatiquement à l'utilisateur en fonction du contexte : heure, emplacement et historique des actions.
Foire aux questions
Shortcut est un scénario reliant les actions de différentes applications, pas une application autonome. L'utilisateur n'écrit pas de code mais assemble un scénario à partir de blocs Actions prêts. Un Shortcut se déclenche et s'exécute sans ouvrir l'application Shortcuts, tandis qu'une application normale nécessite un lancement via une icône à l'écran.
Shortcuts prend en charge les déclencheurs : heure planifiée, géozone à l'entrée ou la sortie d'une zone, étiquette NFC au contact d'un iPhone, ouverture d'application, pression sur un widget, commande vocale Siri, connexion du chargeur, mode sommeil et mode concentration, ainsi que des notifications spécifiques d'applications. La configuration se fait dans l'onglet Automatisation.
Oui, un Shortcut est exporté sous forme de fichier .shortcut et peut être envoyé via AirDrop, iMessage ou publié dans la galerie Shortcuts via iCloud. Le destinataire importe le scénario et peut l'utiliser. Lors du téléchargement depuis Internet, iOS demande une confirmation et avertit de l'exécution de scénarios non vérifiés en raison des risques de sécurité potentiels.
Les applications tierces ajoutent des Actions via le framework App Intents sur iOS 16+ ou le framework Intents sur les versions plus anciennes. Le développeur enregistre les actions dans Intents.intentdefinition, et elles apparaissent dans la galerie Actions de l'application Shortcuts. L'utilisateur combine des Actions de différentes applications — par exemple, envoyer un lien depuis Safari vers les notes Bear.
Non, les Shortcuts sont créés visuellement sans code. L'utilisateur fait glisser et dépose des blocs Actions de la liste, configure les paramètres et les connecte séquentiellement. Pour les scénarios avancés, des blocs comme Run Script Over SSH, Get Contents of URL et Control Flow If, Repeat, For Each sont disponibles, mais l'expérience en programmation n'est pas requise.
Résumé
Nous développerons une application mobile clé en main
IT Sectr crée des applications iOS et Android pour les startups et les entreprises depuis 2017. Nous vous conseillerons et vous proposerons la meilleure solution.
Lisez aussi