跳过内容

安卓设置

GitHub

On Android,通过数字资产链接将应用程序和依赖方域名连接起来时,passkeys与您的网站一起工作。

What the plugin handles

标题:什么插件处理

After you add the plugin config and run bunx cap sync,该插件将修补生成的Android主机项目:

  • 注入 asset_statements 清单元数据
  • 写入该元数据引用的生成字符串资源

What you still need to host

标题:您仍然需要托管

You must publish assetlinks.json 在依赖方域名上:

https://signin.example.com/.well-known/assetlinks.json

示例:

[
{
"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"
]
}
}
]
  1. 设置 origindomainsplugins.CapacitorPasskeycapacitor.config.*.
  2. 运行 bunx cap sync.
  3. 使用您的真实Android包名在 assetlinks.json.
  4. 添加您需要的每个签名证书指纹,包括调试或内部签名密钥,如果您测试这些构建。
  5. 在同一个域名上托管文件,域名与 Relying-Party ID 一致。

与浏览器的行为有重要区别

重要行为区别于浏览器

如果配置了数字资产链接,Android 可以使用同一个 Relying Party 和密钥作为您的网站。剩下的区别是原生中的字面来源报告 clientDataJSON.

  • 一个正常的 Android 应用程序不会像特权浏览器一样行为
  • 断言来源可以与 Android 应用程序签名绑定而不是您的网站来源
  • 如果您的后端严格验证, clientDataJSON.origin接受 Android 应用程序来源和网站来源

继续从 Android 设置

重要行为区别于浏览器

如果您正在使用 Android 设置 为了计划身份验证和帐户流程,连接它与 使用 @capgo/capacitor-passkey 对于本地能力的native capability in 使用 @capgo/capacitor-passkey, @capgo/capacitor-social-login 对于实现细节的 @capgo/capacitor-social-login, @capgo/capacitor-passkey 对于实现细节的 @capgo/capacitor-passkey, @capgo/capacitor-native-biometric 对于实现细节的 @capgo/capacitor-native-biometric,和 双因素身份验证 对于实现细节的双因素身份验证。