Appy

Deep linking

Cosa sono gli Android App Links?

In breve

Gli Android App Links sono link https verificati che Android, dalla versione 6.0 e sui dispositivi con i servizi Google, apre direttamente nella tua app, senza chiedere all’utente quale app usare. La verifica si basa su due elementi: un intent filter con android:autoVerify="true" nell’app e un file assetlinks.json pubblicato sul dominio.

Come Android verifica il dominio

All’installazione, Android individua gli intent filter con autoVerify e scarica /.well-known/assetlinks.json da ogni dominio dichiarato. Il file deve contenere il package name dell’app e l’impronta SHA-256 del certificato che l’ha firmata. Se tutto corrisponde, il dominio risulta verificato e i link si aprono nell’app. Altrimenti Android tratta il link come un normale link web: apre il browser o chiede quale app usare.

Il problema più frequente

Nel file c’è l’impronta della chiave di debug o di quella di caricamento, ma manca quella della chiave di Play App Signing, cioè la chiave con cui Google Play firma l’app che distribuisce. Risultato: in test funziona tutto, in produzione niente. Quell’impronta si trova nella Play Console: aggiungila al file accanto alle altre. Per vedere lo stato reale su un telefono, lancia adb shell pm get-app-links seguito dal package name.

EsempioStato della verifica sul dispositivo
adb shell pm get-app-links com.esempio.app
Per approfondireApp Links Android non verificati: diagnosi in cinque minuti con adbI comandi adb da lanciare e come leggerne il risultato, causa per causa.
  • assetlinks.json

    assetlinks.json è il file Digital Asset Links che Android consulta per verificare i tuoi App Links. Pubblicato all’indirizzo /.well-known/assetlinks.json del tuo dominio, dichiara che un’app, identificata dal package name e dall’impronta SHA-256 del certificato di firma, può aprire i link di quel dominio.

  • Universal Links

    Gli Universal Links (link universali) sono normali link https che iOS apre direttamente nella tua app se è installata, e sul tuo sito web se non lo è. Apple li ha introdotti con iOS 9. Si basano su un’associazione verificata tra app e dominio: l’entitlement Associated Domains da una parte, il file apple-app-site-association dall’altra.

  • URL intent

    Un URL intent è un formato di link tipico di Chrome su Android, che inizia con intent://. Indica lo scheme da usare, il package name dell’app e, se vuoi, una pagina web da aprire quando l’app manca. Se l’app è installata, Chrome la apre; altrimenti carica quella pagina web, oppure la scheda dell’app su Google Play.

Tutto il glossario

Un solo link per App Store, Google Play e web

Crea uno smart link con il suo QR code: ogni telefono arriva allo store giusto, ogni computer al tuo sito. Gratis fino a 4 link, senza pubblicità.