Featured image

Universal Links in iOS: Guida Rapida Link to heading

Universal Links è una tecnologia iOS che permette di aprire direttamente la tua app quando un utente tocca un link, invece di aprire Safari. Se l’app non è installata, il link si apre normalmente nel browser.

Implementazione Veloce Link to heading

1. File apple-app-site-association Link to heading

Crea il file apple-app-site-association (senza estensione) nella directory /.well-known/ del tuo server:

{
  "applinks": {
    "apps": [],
    "details": [
      {
        "appID": "TEAMID.com.tuodominio.app",
        "paths": ["*"]
      }
    ]
  }
}
Warning
Il file deve essere raggiungibile dai server Apple, non basta che il tuo device lo raggiunga.

2. Verifica la Raggiungibilità Link to heading

Testa che Apple riesca ad accedere al file:

https://app-site-association.cdn-apple.com/a/v1/yourdomain.com

3. Configurazione Xcode Link to heading

Nel tuo progetto Xcode:

  1. Vai su Signing & Capabilities
  2. Aggiungi Associated Domains
  3. Inserisci: applinks:yourdomain.com
Warning
Assicurati di configurare le Associated Domains nel target giusto (se stai testando in sviluppo, configurale nel target di sviluppo, non solo in release).

4. Team ID Link to heading

Il Team ID lo trovi in:

  • Xcode: Project Settings → Signing & Capabilities → Team
  • Apple Developer Portal: Membership → Team ID
  • Oppure nelle impostazioni del tuo account sviluppatore

5. Gestione nell’App Link to heading

Nel tuo AppDelegate o SceneDelegate:

func application(_ application: UIApplication, continue userActivity: NSUserActivity, restorationHandler: @escaping ([UIUserActivityRestoring]?) -> Void) -> Bool {
    guard userActivity.activityType == NSUserActivityTypeBrowsingWeb,
          let url = userActivity.webpageURL else {
        return false
    }

    // Gestisci il deep link
    handleUniversalLink(url)
    return true
}

Note Finali Link to heading

  • Il file deve essere servito via HTTPS
  • Può richiedere fino a 24 ore per la propagazione
  • Testa sempre con build di produzione o TestFlight per risultati accurati