Liaison profonde iOS (AASA)

Jan 19 2023
Afin de prendre en charge les liens profonds sur iOS, vous devez diffuser un fichier Apple-app-site-association (AASA) sur votre site Web. Le fichier AASA est un fichier JSON qui contient des informations sur les schémas d'URL pris en charge par votre application.

Afin de prendre en charge les liens profonds sur iOS, vous devez diffuser un fichier Apple-app-site-association (AASA) sur votre site Web. Le fichier AASA est un fichier JSON qui contient des informations sur les schémas d'URL pris en charge par votre application. Lorsqu'un utilisateur clique sur un lien qui correspond à l'un des schémas d'URL du fichier AASA, l'application s'ouvre à la place du navigateur.

Pourquoi c'est important ?

Apple veut s'assurer que le lien que vous utilisez pour ouvrir votre application est bien un lien que vous possédez et que vous n'essayez pas d'ouvrir votre application par des liens d'autres applications, par exemple par des liens Facebook ou Instagram

À quoi devrait ressembler le fichier ?

ce fichier doit contenir les paramètres pertinents de votre application et la structure du fichier doit ressembler à ceci

{
  "applinks": {
    "apps": [],
    "details": [
      {
        "appID": "YourAppID",
        "paths": ["*"]
      }
    ]
  }
}

appID : construit en combinant l'ID d'équipe* de votre application (ou le préfixe d'application Apple) et l'identifiant de bundle**. Dans l'exemple ci-dessus, 3XXXXX9M83 est l'ID d'équipe et io.branch-labs.Branchster est l'ID de bundle.

paths : tableau de chaînes qui spécifient quels chemins sont inclus ou exclus de l'association.

  • Vous ne savez pas quel est votre identifiant d'équipe ? Rendez-vous sur https://developer.apple.com/account et récupérez-le dans la section Adhésion.

Si vous utilisez FastAPI pour servir votre site Web, vous pouvez facilement servir le fichier AASA en créant un nouveau point de terminaison dans votre API.

from fastapi import FastAPI, File, UploadFile
app = FastAPI()

@app.get("/apple-app-site-association")
async def apple_app_site_association():
    return File("path/to/apple-app-site-association.json", filename="apple-app-site-association.json")

Vous pouvez également servir le fichier AASA en le téléchargeant sur votre serveur.

@app.post("/apple-app-site-association")
async def apple_app_site_association(file: UploadFile):
    return File(file.file, filename="apple-app-site-association.json")

Ne faites pas d'erreurs stupides

Il est important de noter que le fichier AASA doit être servi via une connexion sécurisée (HTTPS) et que son emplacement doit être accessible à tous les clients. Il est également important de s'assurer que le fichier est accessible avec le type de contenu correct.

Vérification de votre dossier

Vous pouvez valider que le fichier que vous avez téléchargé est servi correctement en utilisant le validateur d'association Apple

il suffit de mettre votre URL complète à la racine de l'API rapide

sans — /apple-app-site-association

le lien devrait ressembler à ceci -

mondomaine.com

Si vous avez tout fait correctement, vous devriez voir ceci :

Se souvenir!

servir le fichier apple-app-site-association à l'aide de FastAPI est facile. Il vous suffit de créer un nouveau point de terminaison dans votre API qui sert le fichier et de vous assurer qu'il est servi via une connexion sécurisée et accessible à tous les clients. Vous pouvez servir le fichier en fournissant le chemin du fichier ou en le téléchargeant sur votre serveur.

Bonne chance Shilo !