Android-Einrichtung
Kopieren Sie einen Setup-Vorschlag mit den Installationsanweisungen und der vollständigen Markdown-Anleitung für diesen Plugin.
Bei Android funktionieren Passkeys mit Ihrer Website, wenn die App und der Relying-Party-Domain über Digital Asset Links verbunden sind.
Was das Plugin handhabt
Abschnitt mit dem Titel „Was das Plugin handhabt“Nachdem Sie die Plugin-Konfiguration hinzugefügt und ausgeführt haben bunx cap sync, das Plugin patcht das generierte Android-Host-Projekt:
- das
asset_statementsdie Manifest-Metadaten - schreibt die generierte Zeichenfolgenressource, die durch diese Metadaten referenziert wird
Was Sie noch zum Hosting benötigen
Abschnitt mit dem Titel “Was Sie noch zum Hosting benötigen”Sie müssen das veröffentlichen assetlinks.json auf dem Relying-Party-Domain:
https://signin.example.com/.well-known/assetlinks.jsonBeispiel:
[ { "relation": [ "delegate_permission/common.handle_all_urls", "delegate_permission/common.get_login_creds" ], "target": { "namespace": "android_app", "package_name": "app.capgo.passkey.example", "sha256_cert_fingerprints": [ "AA:BB:CC:DD:EE:FF:00:11:22:33:44:55:66:77:88:99:AA:BB:CC:DD:EE:FF:00:11:22:33:44:55:66:77:88:99" ] } }]Checkliste
Abschnitt mit dem Titel “Checkliste”- Setzen
originunddomainsinplugins.CapacitorPasskeyincapacitor.config.*. - Ausführen
bunx cap sync. - Verwenden Sie Ihren echten Android-Paketnamen in
assetlinks.json. - Fügen Sie alle Signaturzertifikatsfingerabdrücke hinzu, die Sie benötigen, einschließlich Debug- oder internen Signierungskeys, wenn Sie diese Builds testen.
- Hosten Sie das Datei auf demselben Domain, die Sie als Relying-Party-Id verwenden.
Wichtige Verhaltensunterschiede zu einem Browser
Abschnitt mit dem Titel “Wichtige Verhaltensunterschiede zu einem Browser”Bei Digital Asset Links konfiguriert, kann Android denselben Relying-Party und Passwörter wie Ihre Website verwenden. Der verbleibende Unterschied ist der wörtliche Ursprung, der in der nativen Anwendung gemeldet wird. clientDataJSON.
- Ein normales Android-App verhält sich nicht wie eine privilegierte Browser-App.
- Die Behauptungsquelle kann an die Android-App-Signatur anstatt an Ihre Website-Quelle gebunden werden.
- Wenn Ihr Backend streng die Validierung anwendet
clientDataJSON.origin, akzeptieren Sie die Android-App-Quelle neben der Website-Quelle.