关于Firebase App Check结合Play Integrity与App Distribution的问题咨询
问题分析与解决方案
首先明确:Firebase App Distribution 配合 Play Integrity 作为 App Check 提供方是完全支持的,报错 403 body. App attestation failed. 大概率是遗漏了特定配置步骤,以下是排查和解决方向:
1. 确认签名证书是否匹配 Firebase App Distribution 分发的 APK
你添加的是 Play Store 内部测试证书的 SHA 值,但 Firebase App Distribution 分发的 APK 可能使用的是Firebase App Distribution 专属签名证书,而非 Play 内部测试证书。
解决步骤:
- 登录 Firebase 控制台,进入对应项目的「App Distribution」模块
- 找到你的应用,进入「应用设置」>「签名」页面
- 复制页面上显示的 SHA-256 和 SHA-1 值
- 将这两组值添加到:
- Firebase 项目「设置」>「应用」> 对应应用的「应用签名」区域
- App Check 控制台中 Play Integrity 提供方的配置页面
2. 验证 Play Integrity 与 Firebase/Play Console 的关联配置
- 确认 Firebase 项目已正确关联到对应的 Play Console 项目(在 Firebase 项目设置的「集成」页面检查 Play 集成状态)
- 在 Play Console 中,确保你的应用已启用「Play App Signing」,并且 Firebase 项目拥有访问该应用的权限
- 检查 App Check 控制台中 Play Integrity 提供方的配置,确认包名与应用完全一致,且未设置过于严格的验证规则
3. 检查应用内 App Check 初始化逻辑
确保应用启动时正确初始化 Play Integrity 提供方,示例代码(Android):
FirebaseApp.initializeApp(context) val appCheck = FirebaseAppCheck.getInstance() appCheck.installAppCheckProviderFactory( PlayIntegrityAppCheckProviderFactory.getInstance() )
注意不要在初始化时添加额外的限制条件,比如强制限定安装来源为 Play Store。
4. 等待配置生效
Firebase 相关配置的更新可能需要 10-30 分钟才能全局生效,添加新的 SHA 值后请等待一段时间再重新测试。
内容的提问来源于stack exchange,提问作者jimmymorales
相关产品推荐
相关产品推荐

