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.
L'app link si apre nel browser anziché nell'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 percorsohttps://<your-domain>/.well-known/assetlinks.jsone pubblicato tramite HTTPS senza reindirizzamenti. Utilizza uno strumento di convalida online. - Verifica della fingerprint SHA-256: verifica che
sha256_cert_fingerprintsinassetlinks.jsoncorrisponda 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 tuoAndroidManifest.xmlincludaandroid:autoVerify="true". - Controlla i reindirizzamenti lato server: i reindirizzamenti da
httpahttpso da un dominio non www awwwpossono 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.
- Controlla il file
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.
- Forza la nuova verifica: il modo più affidabile per testare le modifiche è forzare un nuovo recupero con
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 diexample.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.comahttps://example.com - Da
example.comawww.example.com
Questo comportamento protegge la sicurezza della tua app.
- Da
- 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.
- Firma dell'app con un certificato di debug e presenza della sola firma della release in
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.