Configuration Android
Copiez un prompt de configuration avec les étapes d'installation et le guide Markdown complet pour ce plugin.
Sur Android, les mots de passe passkeys fonctionnent avec votre site web lorsque l'application et le domaine de la partie de confiance sont connectés par les liens d'actifs numériques.
Ce que le plugin gère
Section intitulée « Ce que le plugin gère »Après avoir ajouté la configuration du plugin et avoir exécuté bunx cap syncle plugin met à jour le projet de l'hôte Android généré :
- injecte les
asset_statementsinformations de métadonnées du manifeste - écrit la chaîne de ressources générée référencée par ces métadonnées
Ce dont vous avez encore besoin pour héberger
Section intitulée « Ce que vous devez encore héberger »Vous devez publier assetlinks.json sur le domaine du tiers qui s'appuie :
https://signin.example.com/.well-known/assetlinks.jsonExemple :
[ { "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" ] } }]Liste de vérification
Section intitulée « Liste de vérification »- Définir
originetdomainsdansplugins.CapacitorPasskeydanscapacitor.config.*. - Exécutez
bunx cap sync. - Utilisez votre nom de package Android réel dans
assetlinks.json. - Ajoutez tous les empreintes de certificat de signature dont vous avez besoin, y compris les clés de signature de débogage ou de clés de signature interne si vous testez ces builds.
- Héberger le fichier sur le même domaine que celui utilisé pour l'ID de la partie qui s'appuie.
Différence importante de comportement par rapport à un navigateur
Section intitulée “Différence importante de comportement par rapport à un navigateur”Lorsque les liens d'actif numérique sont configurés, Android peut utiliser la même partie qui s'appuie et les clés de passeport comme votre site web. La différence restante est l'origine littérale signalée dans le native clientDataJSON.
- Une application Android normale ne se comporte pas comme un navigateur privilégié.
- L'origine de l'assertion peut être liée à la signature de l'application Android au lieu de l'origine du site web.
- Si votre serveur valide strictement
clientDataJSON.origin, acceptez l'origine de l'application Android en plus de l'origine du site web.