Pour diffuser correctement les fichiers App Link sur iOS et Android, vous devez configurer à la fois votre site web et vos applications mobiles. Cela implique de créer et d'héberger des fichiers spécifiques sur votre serveur web, ainsi que d'effectuer les configurations correspondantes dans vos projets iOS et Android.
Liens universels iOS
Pour iOS, vous devez configurer des liens universels, qui permettent aux utilisateurs de cliquer sur un lien vers votre site web et d'être redirigés de manière transparente vers votre application installée.
-
Créez le fichier «
apple-app-site-association» :- Créez un fichier JSON nommé
apple-app-site-association(sans.jsonextension). - Ce fichier indique les URL que votre application peut gérer.
- Le fichier doit contenir un
applinksdictionnaire. À l'intérieurapplinks, incluez unappstableau et undetailstableau. Chaque objet dudetailstableau doit spécifier leappID(votre identifiant Apple Team suivi de l'identifiant de bundle de votre application) et un tableau depathsque votre application peut gérer. Vous pouvez utiliser des caractères génériques (*et?) pour la correspondance de chemins. - Exemple de contenu du fichier `
apple-app-site-association` :json { "applinks": { "apps": [], "details": [ { "appID": "YOUR_TEAM_ID.com.yourcompany.yourapp", "paths": [ "/path/to/content/*", "/another/path/*", "NOT /path/to/exclude" ] } ] } }
- Créez un fichier JSON nommé
-
Hébergez le fichier sur votre serveur web :
- Le
apple-app-site-associationfichier doit être hébergé à la racine de votre domaine ou dans le.well-knownsous-répertoire (par exemple,https://yourdomain.com/apple-app-site-associationouhttps://yourdomain.com/.well-known/apple-app-site-association). - Il doit être servi via HTTPS avec un certificat SSL valide.
- Le fichier doit être accessible directement, sans aucune redirection HTTP (301 ou 302).
- Le type MIME du fichier doit être
application/json. - La taille du fichier non compressé ne doit pas dépasser 128 Ko.
- Si vous prenez en charge plusieurs domaines ou sous-domaines, chaque domaine doit disposer de son propre
apple-app-site-associationfichier.
- Le
-
Configurez votre application iOS :
- Dans Xcode, activez la fonctionnalité « Associated Domains » pour votre projet.
- Ajoutez les domaines pris en charge par votre application à la liste « Associated Domains », en leur ajoutant le préfixe
applinks:(par exemple,applinks:yourdomain.com). - Implémentez les méthodes nécessaires dans le fichier
AppDelegateouSceneDelegatede votre application pour gérer les URL Universal Link entrantes.
Liens d'application Android
Sur Android, les liens d'application offrent une expérience similaire et fluide, permettant aux liens vérifiés de s'ouvrir directement dans votre application sans boîte de dialogue de désambiguïsation.
-
Créez le fichier «
assetlinks.json» :- Créez un fichier JSON nommé
assetlinks.json. - Ce fichier établit une association de confiance entre votre site web et votre application Android.
- Le fichier doit contenir un tableau JSON avec un objet qui spécifie le
relation(par exemple,delegate_permission/common.handle_all_urls),target(y comprisnamespacecommeandroid_app, l'package_name, et lesha256_cert_fingerprintsdu certificat de signature de votre application). - Vous pouvez obtenir l'empreinte SHA256 à l'aide de la
keytoolou depuis la console Google Play si vous utilisez la signature d'application Play. - Exemple de contenu du fichier `
assetlinks.json` :json [{ "relation": ["delegate_permission/common.handle_all_urls"], "target": { "namespace": "android_app", "package_name": "com.yourcompany.yourapp", "sha256_cert_fingerprints": ["AA:BB:CC:DD:EE:FF:11:22:33:44:55:66:77:88:99:00:11:22:33:44:55:66:77:88:99:00:AA:BB:CC:DD:EE:FF"] } }]
- Créez un fichier JSON nommé
-
Hébergez le fichier sur votre serveur web :
- Le
assetlinks.jsonfichier doit être hébergé à l'adressehttps://yourdomain.com/.well-known/assetlinks.json. - Il doit être servi via HTTPS avec un certificat SSL valide.
- Le fichier doit être accessible directement sans aucune redirection HTTP (301 ou 302).
- Le type MIME du fichier doit être
application/json. - Si les liens de votre application prennent en charge plusieurs domaines hôtes, vous devez publier le
assetlinks.jsonfichier sur chaque domaine.
- Le
-
Configurez votre application Android :
- Ajoutez un
<intent-filter>à la sectionAndroidManifest.xmlpour les URL que vous souhaitez gérer. - Incluez
android:autoVerify="true"dans le<intent-filter>. Cela indique à Android de vérifier le domaine hôte. - Le
<intent-filter>devrait inclureACTION_VIEW,BROWSABLE, etDEFAULTcatégories. - Spécifiez le
<data>schéma (par exemple,https), l'hôte et tout préfixe ou modèle de chemin facultatif. - Exemple de filtre d'intention «
AndroidManifest.xml» :xml <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="yourdomain.com" android:pathPrefix="/path/to/content" /> </intent-filter> </activity> - Gérer l'URL entrante
Intentdans l'activité de votre application pour extraire les données de l'URL et accéder au contenu approprié.
- Ajoutez un
Bonnes pratiques générales
- Le protocole HTTPS est obligatoire pour les liens universels iOS et les liens d'application Android.
- Évitez les redirections lors de la diffusion de ces fichiers d'association.
- Testez minutieusement sur des appareils réels et utilisez des outils de validation (par exemple, l'API Digital Asset Links de Google pour Android et divers validateurs en ligne pour les fichiers AASA iOS) afin de garantir une configuration correcte.
- Assurez-vous d'être propriétaire des domaines pour lesquels vous configurez des liens d'application.