Growth
Marché

C'est quoi les App Intents iOS et comment les utiliser ?

Votre app dort dans le téléphone de vos utilisateurs. Ils ne l'ouvrent pas. Ils ne la désinstallent pas non plus. Elle est juste là, oubliée entre Candy Crush et l'appli de leur banque. Les App Intents iOS, c'est le framework Apple qui permet à votre app de s'inviter dans leur quotidien, sans qu'ils aient à l'ouvrir.

Résumé l'article avec

La plupart des applications mobiles vivent dans une bulle. L'utilisateur ouvre l'app, fait ce qu'il a à faire, et repart. Pourtant, depuis iOS 16, Apple offre aux développeurs un framework qui permet de sortir leur app de cette bulle pour la connecter directement au système : les App Intents.

C'est l'un des sujets les moins bien documentés en français sur le marché mobile et pourtant, il devient central avec l'arrivée d'Apple Intelligence. Notre agence de création d'application mobile firstapp vous explique ici ce que sont les App Intents iOS, pourquoi vous devriez les implémenter, et comment faire si votre app est en React Native.

Pour intégrer des App Intents iOS dans votre application, voici les 5 étapes clés :

  1. Créer un struct conforme au protocole AppIntent
  2. Implémenter la méthode perform()
  3. Définir un AppShortcutsProvider pour Siri
  4. Configurer les entités si votre intent utilise des données dynamiques
  5. Tester sur device réel (pas le simulateur)

C'est quoi un App Intent iOS ?

Un App Intent est une action exposée par votre application au système iOS. Vous définissez ce que votre app sait faire  démarrer une session, afficher un contenu, lancer une commande  et iOS peut ensuite déclencher ces actions depuis n'importe quelle surface système, sans que l'utilisateur ait besoin d'ouvrir manuellement l'app.

Le framework App Intents a été introduit avec iOS 16 pour remplacer l'ancien système SiriKit Intents, plus lourd et moins intuitif à coder. La différence majeure : avec App Intents, tout s'écrit directement en Swift natif, avec quelques lignes de code. Fini les fichiers .intentdefinition et la génération automatique de code.

Un App Intent suit une structure simple :

  • un titre localisable (le nom de l'action visible par l'utilisateur)
  • une méthode perform() qui exécute l'action
  • des paramètres optionnels (quelle session ? quel contenu ? quel utilisateur ?)

C'est tout. Apple gère l'enregistrement, la découverte et l'affichage dans les différentes surfaces.

App Intent (iOS)

SiriKit ou App Intents : quelle différence ?

⚠️ SiriKit ≠ App Intents. SiriKit (iOS 10) est l'ancien système, limité à des domaines prédéfinis par Apple : messagerie, VoIP, paiements, fitness. App Intents (iOS 16) le remplace intégralement et permet d'exposer n'importe quelle action de votre app  sans contrainte de domaine. Si vous trouvez des tutoriels qui mentionnent des fichiers .intentdefinition ou la génération automatique de code Xcode, ils sont obsolètes.

La migration vers App Intents est officiellement recommandée par Apple pour toute nouvelle intégration. Les App Shortcuts, construits par-dessus les App Intents, permettent de pré-configurer des phrases Siri sans que l'utilisateur ait besoin d'un apprentissage préalable  ce qui n'était pas possible avec SiriKit.

En résumé : si vous développez ou refondez une app iOS aujourd'hui, SiriKit ne devrait plus être dans votre vocabulaire.

À quoi ça sert concrètement ?

Prenons des exemples concrets, parce que "connecter votre app à Siri" ça ne veut rien dire si on ne visualise pas l'impact utilisateur.

App de fitness : l'utilisateur dit "Hey Siri, démarre ma séance du lundi" → l'intent se déclenche, l'app s'ouvre directement sur la bonne session, sans navigation.

App de livraison : depuis Spotlight, l'utilisateur tape le nom de l'app → les actions suggérées apparaissent : "Recommander ma dernière commande", "Suivre ma livraison en cours".

App de productivité : depuis le bouton Action de l'iPhone 15 Pro, l'utilisateur crée une tâche ou lance une minuterie en un geste, sans même déverrouiller l'écran.

App de streaming : dans un widget interactif, un bouton "Reprendre" déclenche directement la lecture via un App Intent  sans passer par l'app, sans loading screen.

L'enjeu business derrière tout ça, c'est la fréquence d'usage. Une app présente dans Spotlight, dans Siri et dans les App Shortcuts est une app qui s'intègre dans les habitudes quotidiennes de l'utilisateur. Et une app dans les habitudes, c'est une app qui convertit et qui retient. C'est le même principe que l'optimisation de l'onboarding mobile : réduire la friction à chaque point de contact.

Les surfaces disponibles sur iOS

Quand vous implémentez des App Intents, votre app devient accessible depuis plusieurs points d'entrée système.

Siri

La surface la plus connue. L'utilisateur peut déclencher vos intents par la voix. Avec App Shortcuts, vous associez des phrases prédéfinies à vos actions : Siri les reconnaît immédiatement, sans configuration côté utilisateur.

L'app Raccourcis

Toutes vos actions apparaissent automatiquement dans l'app Raccourcis. Les utilisateurs avancés peuvent créer des automatisations complexes en combinant vos intents avec d'autres actions système  réveil, localisation, heure, etc.

Spotlight

Depuis iOS 17, vos App Shortcuts s'affichent directement dans Spotlight avec l'icône de votre app. Depuis iOS 18, vos entités (vos objets métier : sessions, produits, contacts) sont également indexées et apparaissent dans les résultats de recherche. C'est un canal de rediscoverability non négligeable : un utilisateur qui n'a pas ouvert votre app depuis deux semaines peut la retrouver via une recherche contextuelle. Un levier complémentaire à votre stratégie ASO App Store.

Les widgets interactifs

Depuis iOS 17, les boutons dans vos widgets peuvent exécuter des App Intents directement, sans ouvrir l'app. C'est une rupture importante par rapport aux anciens widgets statiques.

Le Control Center (iOS 18+)

Vous pouvez exposer des contrôles dans le Centre de contrôle, personnalisables par l'utilisateur. Un raccourci vers votre app en un swipe, depuis n'importe quel écran.

Le bouton Action

Disponible sur iPhone 15 Pro et plus, ce bouton physique peut être configuré par l'utilisateur pour déclencher un App Intent de votre app.

Apple Pencil Pro

Pour les apps créatives ou de prise de notes, une pression sur le Pencil Pro peut déclencher une action spécifique  démarrer un nouveau dessin, créer une note, basculer d'outil.

App Intents et Apple Intelligence

Avec iOS 18 et l'arrivée d'Apple Intelligence, les App Intents deviennent le point d'entrée obligatoire pour que votre app bénéficie des capacités IA d'Apple.

Apple a défini des "domaines d'assistant"  les Assistant Schemas  qui sont des catégories d'intents standardisées : books, camera, fitness, mail, messages, photos, spreadsheets, et bien d'autres. Si votre app adopte ces schémas, Siri peut exécuter des actions naturelles sans que vous ayez besoin de tout coder manuellement.

Concrètement : une app de prise de notes qui adopte le schéma notes peut recevoir des commandes comme "Ouvre ma note sur le projet X dans [nom de l'app]" sans configuration supplémentaire côté développeur.

WWDC 2025 a introduit de nouvelles capacités majeures : les interactive app intent snippets (résultats enrichis et interactifs directement dans Siri), l'intégration avec Visual Intelligence (pour déclencher des actions depuis la caméra), et la possibilité d'associer des entités au contenu affiché à l'écran pour que Siri comprenne le contexte de navigation actuel de l'utilisateur  et puisse agir dessus.

💡 La direction est claire : les apps qui n'implémentent pas App Intents seront progressivement invisibles dans l'écosystème Apple Intelligence. Ce n'est plus une feature optionnelle  c'est une fondation. Notre analyse des tendances apps mobiles 2026 revient en détail sur ce virage IA.

Comment implémenter un App Intent en Swift ?

Voici la structure minimale d'un App Intent fonctionnel :

import AppIntents

struct StartSessionIntent: AppIntent {
    static var title: LocalizedStringResource = "Démarrer une session"

    func perform() async throws -> some IntentResult {
        // Votre logique ici
        return .result()
    }
}

Pour créer un App Shortcut associé à une phrase Siri :

struct MonAppShortcuts: AppShortcutsProvider {
    static var appShortcuts: [AppShortcut] {
        AppShortcut(
            intent: StartSessionIntent(),
            phrases: ["Démarre une session dans \(.applicationName)"],
            shortTitle: "Démarrer une session",
            systemImageName: "play.fill"
        )
    }
}

Apple gère automatiquement l'enregistrement. Votre intent est disponible dans Siri et Raccourcis dès le premier lancement  même si l'app n'a jamais été ouverte auparavant.

Pour les intents avec paramètres (choisir quel type de session démarrer, par exemple), vous ajoutez des propriétés @Parameter et des EntityQuery pour que Siri puisse proposer des options dynamiques à l'utilisateur, issues directement de vos données.

Comment implémenter des App Intents iOS dans une app React Native

C'est là que ça se complique  mais moins qu'on ne le croit.

La réalité technique

Les App Intents iOS en React Native nécessitent du code Swift natif. Ils s'exécutent indépendamment du contexte React Native. Quand Siri déclenche votre intent, votre code JavaScript ne tourne pas forcément. C'est le Swift qui prend le relais.

Cela signifie qu'on ne peut pas déclencher directement une fonction JavaScript depuis un App Intent. Il faut passer par un pont de données partagées.

L'architecture recommandée

Le pattern qui fonctionne le mieux en Expo / React Native :

  1. Votre app React Native écrit des données dans un UserDefaults partagé (via un Expo Module natif ou un module natif custom).
  2. L'App Intent Swift lit ces données depuis le même UserDefaults au moment de l'exécution.
  3. Pour ouvrir l'app sur un écran précis, l'intent envoie un deep link intercepté par votre code JavaScript.
// Dans votre App Intent Swift
func perform() async throws -> some IntentResult {
    // Lire les données partagées via App Groups
    let defaults = UserDefaults(suiteName: "group.com.votre.app")
    let userId = defaults?.string(forKey: "currentUserId") ?? ""

    // Deep link vers l'app
    return .result(opensIntent: OpenURLIntent("votre-app://session/start?user=\(userId)"))
}

Avec Expo

La méthode la plus propre aujourd'hui passe par un Expo Module local qui crée le pont entre votre JavaScript et le UserDefaults partagé via App Groups. L'intent Swift lit ensuite dans ce store partagé sans avoir besoin que l'app soit active  votre JS ne tourne pas, le Swift lit directement.

Pour les apps plus complexes, un module natif custom reste nécessaire. C'est du Swift pur côté iOS, exposé au JS via le bridge React Native ou les TurboModules (New Architecture).

⚠️ À retenir : les App Intents en React Native demandent du code Swift natif. Ce n'est pas quelque chose qu'on configure depuis le JavaScript. Il faut soit un module natif dédié, soit faire appel à une équipe qui maîtrise les deux couches  React Native et iOS natif.

C'est précisément ce que nous faisons chez firstapp. Nos apps React Native ne s'arrêtent pas à l'écran  elles s'intègrent dans l'écosystème iOS au niveau natif, comme si elles avaient été développées en Swift pur.

Les erreurs à éviter

Exposer trop d'intents d'un coup. Apple recommande de commencer par les 2 ou 3 actions les plus importantes de votre app. Un catalogue d'intents trop large est confus pour l'utilisateur et difficile à maintenir dans le temps.

Créer des intents qui nécessitent l'app ouverte. L'intérêt des App Intents, c'est de fonctionner sans ouvrir l'app. Si toutes vos actions requièrent openAppWhenRun = true, vous passez à côté de l'essentiel du framework.

Ignorer la localisation. Les titres et descriptions de vos intents doivent être localisés avec LocalizedStringResource. Un intent en anglais dans une app française crée une expérience cassée dans Siri  et une friction qui se voit.

Ne pas tester sur device réel. Les App Intents fonctionnent mal ou pas du tout sur simulateur. Testez systématiquement sur un iPhone physique avec iOS 16+ (iOS 18+ pour les fonctionnalités Apple Intelligence et Control Center).

Oublier les entités. Les intents sans entités sont limités à des actions génériques. Définir des entités  vos objets métier : sessions, produits, utilisateurs  permet à Siri de proposer des suggestions contextuelles et de comprendre le contenu de votre app en profondeur.

Confondre SiriKit et App Intents. Si vous partez d'un ancien projet avec des .intentdefinition, ne les migrez pas en patch  refaites proprement avec le framework App Intents. La structure est fondamentalement différente.

Ce que tout le monde se demande avant de se lancer

C'est quoi un App Intent sur iOS ?

Un App Intent iOS est une action de votre application exposée directement au système Apple. Il permet à Siri, Spotlight, l'app Raccourcis, les widgets ou le bouton Action de déclencher des fonctionnalités de votre app sans que l'utilisateur ait besoin de l'ouvrir. Introduit avec iOS 16, ce framework remplace l'ancien SiriKit et s'écrit entièrement en Swift natif.

Quelle est la différence entre SiriKit et App Intents ?

SiriKit, introduit avec iOS 10, permettait uniquement d'accrocher son app à des domaines prédéfinis par Apple  messagerie, VoIP, paiements, fitness. App Intents, apparu avec iOS 16, remplace ce système en donnant aux développeurs la liberté d'exposer n'importe quelle action de leur app, sans contrainte de domaine. Apple recommande officiellement de migrer vers App Intents pour toute nouvelle intégration. Si vous voyez des tutoriels qui parlent de fichiers .intentdefinition, ils sont obsolètes.

À partir de quelle version iOS les App Intents sont-ils disponibles ?

Les App Intents sont disponibles à partir d'iOS 16. Les fonctionnalités les plus avancées  contrôles Control Center, intégration Apple Intelligence avec les Assistant Schemas, interactive snippets dans Siri  nécessitent iOS 18 ou supérieur. Pour une couverture maximale, implémentez les bases sur iOS 16 et ajoutez des fonctionnalités progressivement selon la version détectée sur le device.

Les App Intents fonctionnent-ils dans une app React Native ?

Oui, mais pas depuis le JavaScript. Les App Intents sont du code Swift natif qui s'exécute indépendamment du contexte React Native. L'architecture recommandée passe par un Expo Module ou un module natif custom qui crée un pont de données via UserDefaults partagé (App Groups), et par des deep links pour ouvrir l'app sur un écran précis. C'est faisable, mais ça demande de maîtriser les deux couches : React Native côté JS, Swift côté iOS.

Combien de temps faut-il pour implémenter des App Intents iOS ?

Pour un intent simple  ouvrir un écran spécifique ou déclencher une action basique  comptez 2 à 4 jours de développement en incluant la création du module natif, le pont UserDefaults et les tests sur device. Pour une intégration complète avec entités, requêtes dynamiques, App Shortcuts multi-phrases et Assistant Schemas Apple Intelligence, prévoyez une à deux semaines de travail. En React Native, ajoutez systématiquement un à deux jours pour le bridge natif.

Est-ce qu'un App Intent améliore le classement App Store ?

Pas directement. En revanche, en augmentant la visibilité dans Spotlight et la fréquence d'usage quotidienne, les App Intents contribuent aux signaux d'engagement qu'Apple peut prendre en compte dans son algorithme. Une app utilisée régulièrement via Siri ou Raccourcis est une app avec un meilleur ratio DAU/MAU  ce qui impacte indirectement la rétention et les revenus.

Les App Intents représentent une opportunité concrète de rendre votre app plus présente dans le quotidien de vos utilisateurs, sans passer par une notification push ou une campagne de réengagement. C'est de la rétention par design  intégrée directement dans l'OS.

Si vous souhaitez aller plus loin sur la stratégie d'engagement et de monétisation de votre app, explorez nos guides sur l'optimisation de l'onboarding mobile, la conception de paywalls performants et les erreurs classiques à éviter lors de la création d'une app mobile.

Votre app mérite mieux qu'un téléchargement oublié.Vous voulez implémenter des App Intents ou retravailler l'architecture iOS de votre app ? Parler de votre projet

Restez Informé(e) !

Inscrivez-vous à notre newsletter pour ne rien manquer de l'actualité firstapp.

Thank you! Your submission has been received!
Oops! Something went wrong while submitting the form.
Motif en dégradé de pixels noirs et blancs, avec une concentration élevée de pixels noirs sur le côté gauche qui se dispersent vers la droite.