Risolvere i problemi relativi ai link per app

Questa guida descrive i problemi comuni e come risolverli. Puoi anche utilizzare gli strumenti per la risoluzione dei problemi nella pagina Deep link di Play Console o l'assistente per app link di Android Studio. Per saperne di più, consulta Strumenti per sviluppatori di link alle app.

  • Problema: fai clic su un link che dovrebbe aprire la tua app, ma si apre in un browser web o viene visualizzata una finestra di dialogo di disambiguazione.
  • Soluzione:
    • Controlla il file assetlinks.json: assicurati che il file sia un file JSON valido, accessibile nel percorso https://<your-domain>/.well-known/assetlinks.json e pubblicato tramite HTTPS senza reindirizzamenti. Utilizza uno strumento di convalida online.
    • Verifica della fingerprint SHA-256: verifica che sha256_cert_fingerprints in assetlinks.json corrisponda esattamente alla fingerprint della chiave di firma per la release della tua app (utilizza quella di Play Console se utilizzi la firma dell'app di Google Play). La firma deve essere in lettere maiuscole.
    • Verifica autoVerify: assicurati che <intent-filter> nel tuo AndroidManifest.xml includa android:autoVerify="true".
    • Controlla i reindirizzamenti lato server: i reindirizzamenti da http a https o da un dominio non www a www possono causare l'esito negativo della verifica.
    • Forza la nuova verifica: esegui i comandi ADB nella guida Esegui test sugli app link per ottenere un nuovo risultato di verifica.
    • Diagnostica la risoluzione dei link (Android 17 e versioni successive): esegui adb shell am start --debug-link -a android.intent.action.VIEW -d "<URL>" per controllare quali app candidate, filtri per intent del manifest e regole degli app link dinamici corrispondono all'URL. Per maggiori dettagli, consulta Diagnostica la risoluzione dei link con il flag debug-link.

Le regole dinamiche su Android 15 e versioni successive non vengono aggiornate

  • Problema: hai aggiornato le regole nel file assetlinks.json, ma i nuovi link non vengono gestiti dall'app.
  • Soluzione:
    • Forza la nuova verifica: il modo più affidabile per testare le modifiche è forzare un nuovo recupero con adb shell pm verify-app-links --re-verify <your-package-name>.
    • Controlla la presenza di errori di battitura: esamina attentamente i pattern matcher nelle regole per individuare eventuali errori di sintassi.
    • Controlla le regole dei filtri per il file manifest: esamina le regole dei filtri per intent nel file manifest dell'app per assicurarti che il percorso del link non venga filtrato. Se il link viene filtrato, rendi meno restrittivo il filtro per intent nel manifest dell'app.
    • Diagnostica le regole di corrispondenza (Android 17 e versioni successive): esegui adb shell am start --debug-link -a android.intent.action.VIEW -d "<URL>" per esaminare le regole valutate e determinare se una regola di esclusione (allow = 1) ha impedito l'apertura dell'app. Consulta Diagnostica la risoluzione dei link con il flag debug-link.

Correggi gli errori di implementazione comuni

Se non riesci a verificare gli Android App Links, controlla i seguenti errori comuni. Questa sezione utilizza example.com come nome di dominio segnaposto. Quando esegui questi controlli, sostituisci example.com con il nome di dominio effettivo del tuo server.

Configurazione del filtro per intent non corretta
Controlla se hai incluso un URL non di proprietà della tua app in un elemento <intent-filter>.
Configurazione del server errata

Controlla la configurazione JSON del server e assicurati che il valore SHA sia corretto.

Inoltre, verifica che example.com. (con il punto finale) pubblichi gli stessi contenuti di example.com.

Reindirizzamenti lato server

Il sistema non verifica alcun Android App Link per la tua app se configuri un reindirizzamento come il seguente:

  • Da http://example.com a https://example.com
  • Da example.com a www.example.com

Questo comportamento protegge la sicurezza della tua app.

Robustezza del server

Controlla se le tue app client possono connettersi al server.

Link non verificabili

A scopo di test, potresti aggiungere intenzionalmente link non verificabili. Tieni presente che, su Android 11 e versioni precedenti, questi link impediscono al sistema di verificare tutti gli Android App Links per la tua app.

Firma errata in assetlinks.json

Verifica che la firma sia corretta e corrisponda a quella utilizzata per firmare l'app. Gli errori più comuni includono:

  • Firma dell'app con un certificato di debug e presenza della sola firma della release in assetlinks.json.
  • Avere una firma in minuscolo in assetlinks.json. La firma deve essere in maiuscolo.
  • Se utilizzi la firma dell'app di Google Play, assicurati di utilizzare la firma che Google utilizza per firmare ciascuna delle tue release. Puoi verificare questi dettagli, incluso uno snippet JSON completo, seguendo le istruzioni relative alla dichiarazione delle associazioni di siti web.

Acquisisci una segnalazione di bug

Per problemi complessi difficili da riprodurre, acquisisci una segnalazione di bug e analizzala. In questo modo, puoi ottenere informazioni preziose sulla procedura di verifica e su eventuali errori a livello di sistema.