调用createCredential时应用断言源遭拒绝问题排查
问题解决步骤
匹配签名指纹
错误日志里明确给出了当前应用的SHA256指纹:13:3A:39:D2:B9:48:1A:2C:B3:A5...,而你的assetlinks.json里配置的是另一个指纹62:8D:D4:12:94...,这是核心问题。Google Credential Manager会校验应用签名指纹是否在信任列表中,不匹配就会拒绝请求。更新assetlinks.json
将错误日志里的指纹添加到android_app条目的sha256_cert_fingerprints数组中,确保覆盖当前使用的签名。修改后的配置示例:[ { "relation": [ "delegate_permission/common.handle_all_urls", "delegate_permission/common.get_login_creds" ], "target": { "namespace": "web", "site": "https://myapp.test.com" } }, { "relation": [ "delegate_permission/common.handle_all_urls", "delegate_permission/common.get_login_creds" ], "target": { "namespace": "android_app", "package_name": "com.myapp.test", "sha256_cert_fingerprints": [ "62:8D:D4:12:94...", "13:3A:39:D2:B9:48:1A:2C:B3:A5..." ] } } ]确保assetlinks.json部署正确
把修改后的文件上传到网站的.well-known目录下,保证访问对应地址能直接获取到完整的JSON内容,返回的Content-Type必须为application/json,不能有跳转或404。检查应用签名配置
回滚代码后可能签名配置被修改,比如debug模式用了Android Studio默认的debug密钥库,而之前成功时用的是自定义签名。打开项目的Module级别build.gradle,检查signingConfigs节点,确认当前构建使用的签名文件和指纹对应。清理缓存并测试
清除Google Play服务的缓存(通过系统设置>应用>Google Play服务>存储>清除缓存),重新安装应用后测试createCredential功能。同时确保设备上的Google Play服务是最新版本。
内容的提问来源于stack exchange,提问作者Holy Rock
相关产品推荐
相关产品推荐

