For AI agents: fetch the complete documentation index at /llms.txt, the full documentation corpus at /llms-full.txt, the agent skill at /skill.md, or this page as Markdown at /it/docs/mobile/deep-links.md (or send Accept: text/markdown).
Deep link e configurazione dell'app
Lo schema URL, la mappa delle rotte delle schermate e il contratto di configurazione in bundle.
Un solo valore env deriva lo schema
EXPO_PUBLIC_APP_SCHEME alimenta apps/mobile/app.config.ts, che deriva lo schema dei deep link e le origini consentite di produzione tramite la stessa configurazione di autenticazione mobile usata dal flusso di accesso. Il valore è validato — solo caratteri di schema minuscoli — e gli schemi riservati come http, https, file, javascript, data, exp ed exps vengono rifiutati. Il default distribuito è supastack.
Entrambi gli identificatori sono distribuiti come com.supastack.app in app.json (ios.bundleIdentifier e android.package); rinominali prima del primo caricamento sullo store insieme allo schema.
# apps/mobile/.env.local
EXPO_PUBLIC_APP_SCHEME=supastackLe forme di link che l'app accetta
I deep link sono solo a schema personalizzato: <scheme>://auth/callback completa un passaggio di accesso, e <scheme>://invite/<token> apre la schermata di invito, che invia il token alla rotta di accettazione degli inviti. Gli universal link non sono configurati — app.json non dichiara associatedDomains — quindi ogni link si risolve tramite lo schema.
La mappa di expo-router sotto apps/mobile/app: index è la schermata di accesso, onboarding e new-organization gestiscono la configurazione al primo avvio, paywall presenta gli acquisti, e feedback è una schermata autonoma che funziona da non autenticati. Dentro il gruppo (app) i tab sono home, chat, notifications e settings; content, commerce e assistant sono schermate nascoste raggiunte dalle azioni rapide della home, e settings contiene un proprio sotto-stack di schermate.
In bundle significa che i due lati devono concordare
I valori Expo pubblici sono cotti nel binario distribuito, mentre il server valida i callback mobile rispetto a MOBILE_ALLOWED_ORIGINS a ogni richiesta. La coppia deve corrispondere: un cambio di schema o origine significa una nuova build dell'app e un deploy del server, mai l'uno o l'altro.
Nessun canale over-the-air
Il kit non include la dipendenza expo-updates né una configurazione di aggiornamenti — le modifiche JavaScript raggiungono gli utenti solo tramite nuove build sullo store. Mantieni l'API compatibile con la build supportata più vecchia, oppure attiva le nuove funzionalità tramite stato guidato dal server.
Verifica e risoluzione dei problemi
Testa i link ad avvio a freddo, i link che arrivano mentre l'app è in background e un link ricevuto da non autenticati. Se un link apre una scheda dello store o un browser invece dell'app, lo schema della build installata non corrisponde a EXPO_PUBLIC_APP_SCHEME.