Deep Link est un lien qui mène non pas à une page web, mais à un écran spécifique d'une application mobile. Selon le rapport Branch.io Mobile Deep Linking 2025, les applications avec des deep links configurés affichent une conversion 42% plus élevée vers les installations et une rétention 28% plus élevée. Examinons comment fonctionnent les deep links sur iOS et Android, les types existants et les outils disponibles.
Points clés
Deep Link est une URL pour applications mobiles qui contient des informations non seulement sur l'application à ouvrir, mais aussi sur l'écran à afficher. Par exemple, le lien myapp://profile/42 ouvre l'application myapp et accède immédiatement au profil utilisateur avec l'ID 42. Sans deep link, l'utilisateur arriverait uniquement sur l'écran principal de l'application.
Les deep links sont essentiels pour le marketing et l'expérience utilisateur. Ils sont utilisés dans les campagnes email, les notifications push, les campagnes publicitaires et les codes QR. Selon AppsFlyer (2025), les campagnes avec deep links affichent un CTR (taux de clic) 35% plus élevé par rapport aux liens normaux vers l'écran principal.
Chez IT Sectr, nous implémentons des deep links dans tous nos projets depuis 2019. Notre expérience montre qu'une configuration appropriée des deep links dans les applications mobiles augmente l'engagement des utilisateurs de 25 à 30% grâce à un contenu pertinent immédiatement après la redirection.
Sur iOS, il existe deux méthodes principales pour implémenter les deep links : URL Scheme (protocole personnalisé) et Universal Link (lien https standard). Les deux méthodes permettent de configurer des deep links pour applications mobiles et ont leurs avantages et inconvénients.
URL Scheme est un protocole personnalisé comme myapp://path/to/screen. Il fonctionne depuis iOS 3.0 et ne nécessite pas de configuration serveur. L'inconvénient : si l'application n'est pas installée, Safari ne peut pas ouvrir ce type de lien et l'utilisateur voit une erreur. De plus, les URL Schemes peuvent être interceptés par d'autres applications car le protocole n'est pas unique.
Universal Link (iOS 9+) est un lien https ordinaire qui fonctionne à la fois comme page web et comme deep link. Si l'application est installée, iOS intercepte le lien et ouvre l'application. Sinon, la page web s'ouvre. Les Universal Links sont plus sécurisés (le domaine est vérifié) et n'affichent aucun avertissement.
La configuration d'Universal Links nécessite deux étapes : placer le fichier apple-app-site-association sur le serveur et ajouter un entitlement dans Xcode. Le fichier AASA contient du JSON avec des informations sur les chemins pris en charge et l'ID de l'application. iOS télécharge ce fichier lors de l'installation de l'application et le vérifie lors du suivi d'un lien.
Important : le fichier AASA doit être accessible via HTTPS sans redirections. Chez IT Sectr, nous recommandons de configurer Universal Links plutôt que URL Scheme pour tous les nouveaux projets — ils sont plus sûrs, plus fiables et offrent une meilleure expérience utilisateur.
App Links (Android 6.0+) est l'équivalent Android des Universal Links pour les applications mobiles. L'application spécifie quelles URLs https elle peut traiter et vérifie cela via un fichier numérique sur le serveur. Android vérifie l'association domaine-application sans intervention de l'utilisateur.
Pour implémenter App Links, vous devez : ajouter un Intent Filter dans AndroidManifest.xml avec autoVerify="true", placer le fichier assetlinks.json sur le serveur et signer l'application. Ensuite, Android dirige automatiquement tous les liens du domaine spécifié vers l'application (si installée).
Intent Filter est une déclaration dans AndroidManifest.xml qui indique au système quels types d'intents une Activity peut traiter. Pour les deep links, l'Intent Filter contient des éléments data : schéma (http/https), hôte (domaine) et chemin.
<activity android:name=".MainActivity">
<intent-filter android:autoVerify="true">
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />
<data android:scheme="https"
android:host="example.com"
android:pathPrefix="/product/" />
</intent-filter>
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />
<data android:scheme="myapp"
android:host="product" />
</intent-filter>
</activity>
Le premier Intent Filter gère les App Links (liens https vérifiés via assetlinks.json). Le second gère URL Scheme (myapp://). Important : autoVerify="true" indique à Android de vérifier l'association lors de l'installation de l'application. Si la vérification échoue, le système affiche une boîte de dialogue de sélection d'application.
| Paramètre | iOS | Android |
|---|---|---|
| Type de deep link | Universal Link (iOS 9+), URL Scheme | App Links (Android 6+), Intent Filter |
| Fichier de vérification | apple-app-site-association (JSON) | assetlinks.json (JSON) |
| HTTPS requis | Oui | Oui |
| Sans application | Page web ouverte | Page web ouverte |
| Peut être intercepté par une autre app | Non (domaine unique) | Non (domaine vérifié) |
| Conflits URL Scheme | Oui (toute app peut enregistrer le même scheme) | Oui |
Tableau 1. Comparaison des approches iOS et Android pour le deep linking. Universal Links et App Links sont la norme moderne. URL Scheme et Intent Filters sans autoVerify sont des méthodes héritées mais encore utilisées.
Firebase Dynamic Links (service Google) et Branch.io sont des plateformes de gestion de deep links qui résolvent le problème principal : que faire lorsque l'application n'est pas installée. Elles créent des liens intelligents qui redirigent vers l'App Store / Google Play pour l'installation et, après l'installation, vers l'écran souhaité.
Firebase Dynamic Links est un service gratuit (à partir de 2025). Il permet de créer des liens comme https://yourdomain.page.link/xxx qui fonctionnent comme des deep links sur les deux plateformes. Firebase Dynamic Links prend en charge le deferred deep linking et l'attribution.
Branch.io est une plateforme commerciale aux fonctionnalités plus étendues : liens pour réseaux sociaux, codes QR, analyses et attribution. Branch.io est utilisé par de grandes applications (Pinterest, Reddit) et s'intègre aux principaux MMP (AppsFlyer, Adjust).
Deferred Deep Link est un lien profond pour applications mobiles qui s'active après l'installation. L'utilisateur clique sur un lien avant d'installer l'application, l'installe et, après le premier lancement, accède automatiquement à l'écran cible. C'est un mécanisme clé pour les campagnes publicitaires : un utilisateur a cliqué sur une annonce produit → a installé l'application → a immédiatement vu ce produit.
Attribution est la détermination de la source d'installation. Quelle campagne publicitaire a attiré l'utilisateur ? Quel canal ? Les plateformes d'attribution (AppsFlyer, Adjust, Branch) identifient chaque clic sur un deep link et le lient à l'installation. Selon AppsFlyer (2025), les deferred deep links augmentent la conversion d'achat de 30% par rapport à une installation normale.
Chez IT Sectr, nous configurons des deferred deep links pour les projets e-commerce. Par exemple, dans une application shopping mobile : un utilisateur voit une annonce pour un produit spécifique, clique sur le lien, télécharge l'application et accède immédiatement à la page de ce produit. La conversion d'achat dans ce scénario est 2 fois supérieure à celle d'une installation standard.
Foire aux questions
Universal Link est un type de Deep Link pour iOS qui utilise le protocole https standard. Deep Link est un terme général pour tout lien menant à une application. Universal Link est un cas particulier plus sûr et plus fiable qu'un URL Scheme classique.
C'est un lien qui mémorise l'intention de l'utilisateur (quel écran ouvrir) jusqu'à l'installation de l'application. Après l'installation, l'application reçoit les paramètres du lien et ouvre l'écran souhaité. Sans cela, l'utilisateur atterrirait sur l'écran principal après l'installation.
Sur iOS, utilisez la commande xcrun simctl openurl booted "https://your.link". Sur Android, utilisez adb shell am start -W -a android.intent.action.VIEW -d "https://your.link". Vous pouvez également utiliser des services comme Branch.io pour les tests.
Non, si l'application est déjà installée — Universal Links et App Links suffisent. Firebase Dynamic Links ou Branch.io ne sont nécessaires que pour le scénario « lien avant installation » (deferred deep linking). Pour la plupart des applications, les deep links de base sont suffisants.
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.