In diesem Leitfaden werden häufige Probleme und Möglichkeiten zur Fehlerbehebung beschrieben. Sie können auch die Tools zur Fehlerbehebung auf der Seite „Deeplinks“ in der Play Console oder im App-Links-Assistenten von Android Studio verwenden. Weitere Informationen finden Sie unter App-Links-Entwicklertools.
App-Link wird im Browser statt in der App geöffnet
- Problem: Sie klicken auf einen Link, der Ihre App öffnen sollte, aber er wird in einem Web browser geöffnet oder es wird ein Dialogfeld zur Auswahl angezeigt.
- Lösung:
- Prüfen
assetlinks.json: Achten Sie darauf, dass die Datei gültiges JSON ist, zugänglich unterhttps://<your-domain>/.well-known/assetlinks.json, und über HTTPS ohne Weiterleitungen bereitgestellt wird. Verwenden Sie einen Online-Validator. - SHA‑256-Fingerabdruck überprüfen: Prüfen Sie noch einmal, ob der Eintrag
sha256_cert_fingerprintsinassetlinks.jsongenau mit dem Fingerabdruck des Signaturschlüssels für Ihren App-Release übereinstimmt. Verwenden Sie den Fingerabdruck aus der Play Console, wenn Sie die Play App-Signatur verwenden. Die Signatur muss in Großbuchstaben angegeben sein. - Überprüfen Sie
autoVerify: Achten Sie darauf, dass der<intent-filter>in IhrerAndroidManifest.xmlandroid:autoVerify="true" enthält. - Auf serverseitige Weiterleitungen prüfen: Weiterleitungen von
httpzuhttpsoder von einer Domain ohne „www“ zuwwwkönnen dazu führen, dass die Bestätigung fehlschlägt. - Erneute Bestätigung erzwingen: Führen Sie die ADB-Befehle im Leitfaden zum Testen von App-Links aus, um ein neues Bestätigungsergebnis zu erhalten.
- Linkauflösung diagnostizieren (Android 17 und höher): Führen Sie
adb shell am start --debug-link -a android.intent.action.VIEW -d "<URL>"aus, um zu prüfen, welche Kandidaten-Apps, Manifest-Intent-Filter und Regeln für dynamische App Links mit der URL übereinstimmen. Weitere Informationen finden Sie unter Linkauflösung mit dem Flag „debug-link“ diagnostizieren.
- Prüfen
Dynamische Regeln unter Android 15 und höher werden nicht aktualisiert
- Problem: Sie haben die Regeln in Ihrer
assetlinks.json-Datei aktualisiert, aber die neuen Links werden von der App nicht verarbeitet. - Lösung:
- Erneute Bestätigung erzwingen: Die zuverlässigste Methode zum Testen von Änderungen ist, das erneute Abrufen mit
zu erzwingen
adb shell pm verify-app-links --re-verify <your-package-name>. - Auf Tippfehler prüfen: Überprüfen Sie die Mustervergleichsfunktionen in Ihren Regeln sorgfältig auf Syntaxfehler.
- Manifest-Filterregeln prüfen: Überprüfen Sie die Intent-Filterregeln im App Manifest, um sicherzustellen, dass der Linkpfad nicht herausgefiltert wird. Wenn der Link herausgefiltert wird, machen Sie den Intent-Filter im App-Manifest weniger restriktiv.
- Übereinstimmende Regeln diagnostizieren (Android 17 und höher): Führen Sie
adb shell am start --debug-link -a android.intent.action.VIEW -d "<URL>"aus, um zu prüfen, welche Regeln ausgewertet wurden und ob eine Ausschlussregel (allow = 1) verhindert hat, dass die App geöffnet wurde. Weitere Informationen finden Sie unter Linkauflösung mit dem Flag „debug-link“ diagnostizieren.
- Erneute Bestätigung erzwingen: Die zuverlässigste Methode zum Testen von Änderungen ist, das erneute Abrufen mit
zu erzwingen
Häufige Implementierungsfehler beheben
Wenn Sie Ihre Android App-Links nicht bestätigen können, prüfen Sie, ob einer der folgenden häufigen Fehler vorliegt. In diesem Abschnitt wird example.com als Platzhalter-Domainname verwendet. Ersetzen Sie example.com bei diesen Prüfungen durch den tatsächlichen Domainnamen Ihres Servers.
- Falsche Einrichtung des Intent-Filters
- Prüfen Sie, ob Sie in einem
<intent-filter>Element eine URL verwenden, die nicht Ihrer App gehört. - Falsche Serverkonfiguration
Prüfen Sie die JSON-Konfiguration Ihres Servers und achten Sie darauf, dass der SHA-Wert korrekt ist.
Prüfen Sie außerdem, ob
example.com.(mit dem nachgestellten Punkt) dieselben Inhalte wieexample.combereitstellt.- Serverseitige Weiterleitungen
Das System bestätigt keine Android App-Links für Ihre App, wenn Sie eine Weiterleitung wie die folgende einrichten:
http://example.comzuhttps://example.comexample.comzuwww.example.com
Dieses Verhalten schützt die Sicherheit Ihrer App.
- Serverrobustheit
Prüfen Sie, ob Ihre Client-Apps eine Verbindung zu Ihrem Server herstellen können.
- Nicht bestätigbare Links
Zu Testzwecken können Sie absichtlich nicht bestätigbare Links hinzufügen. Unter Android 11 und niedriger führt dies jedoch dazu, dass das System nicht alle Android App-Links für Ihre App bestätigt.
- Falsche Signatur in assetlinks.json
Prüfen Sie, ob Ihre Signatur korrekt ist und mit der Signatur übereinstimmt, die zum Signieren Ihrer App verwendet wurde. Häufige Fehler sind:
- Die App wurde mit einem Debug-Zertifikat signiert und in
assetlinks.jsonist nur die Release-Signatur vorhanden. - Die Signatur in
assetlinks.jsonist in Kleinbuchstaben angegeben. Die Signatur muss in Großbuchstaben angegeben sein. - Wenn Sie die Play App-Signatur verwenden, achten Sie darauf, dass Sie die Signatur verwenden, mit der Google jeden Ihrer Releases signiert. Sie können diese Details einschließlich eines vollständigen JSON-Snippets überprüfen, indem Sie der Anleitung zum Deklarieren von Websitezuordnungenfolgen.
- Die App wurde mit einem Debug-Zertifikat signiert und in
Fehlerbericht erstellen
Bei komplexen Problemen, die schwer zu reproduzieren sind, können Sie einen Fehlerbericht erstellen und analysieren. So erhalten Sie wertvolle Einblicke in den Bestätigungsprozess und in Fehler auf Systemebene.