You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Android原生应用创建Passkey遇[50152] RP ID验证失败问题求助

Android Passkey创建报错:[50152] RP ID无法验证的解决办法

问题重现

在Android原生应用中实现Passkey创建功能时,触发以下错误:

androidx.credentials.exceptions.publickeycredential.CreatePublicKeyCredentialDomException: [50152] RP ID cannot be validated.

当前使用的Digital Asset Links配置:

[
  {
    "relation": [
      "delegate_permission/common.handle_all_urls",
      "delegate_permission/common.get_login_creds"
    ],
    "target": {
      "namespace": "android_app",
      "package_name": "你的应用包名",
      "sha256_cert_fingerprints": [
        "SHA1指纹"
      ]
    }
  },
  {
    "relation": [
      "delegate_permission/common.handle_all_urls",
      "delegate_permission/common.get_login_creds"
    ],
    "target": {
      "namespace": "web",
      "site": "你的域名"
    }
  }
]

修复步骤

  • 修正证书指纹类型:配置中sha256_cert_fingerprints字段错误填入了SHA1指纹,必须替换为SHA-256指纹。获取方式:
    在终端执行命令:

    keytool -list -v -keystore 你的密钥库文件路径 -alias 密钥别名
    

    找到输出中SHA256:开头的字符串,复制填入配置。

  • 确保RP ID与域名匹配:创建Passkey时指定的RP ID必须是配置中site字段域名的合法注册后缀。例如域名是app.yourdomain.com,RP ID可以是yourdomain.com或app.yourdomain.com,不能使用更深层级的子域名(如sub.app.yourdomain.com)除非对应配置了资产链接。

  • 验证资产链接文件部署:

    1. 资产链接文件必须放在域名根目录下的/.well-known/assetlinks.json路径
    2. 确保文件可通过HTTPS正常访问(HTTP无法通过验证)
    3. 检查JSON格式是否完全合法,无语法错误(原配置缺少外层数组开头的[,已在示例中修正)
  • 确认签名密钥一致性:使用的SHA-256指纹必须和当前测试/发布的应用签名密钥一致,测试包(如debug包)和正式包的密钥指纹通常不同,不要混用。


内容的提问来源于stack exchange,提问作者Rahul Deep Singh

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.15 01:05:05