Flutter中Firebase App Check报错PERMISSION DENIED问题求助
确认Play Integrity密钥正确性
重点区分上传密钥和应用签名密钥:若Play Store开启了应用签名,Firebase控制台需填写的是Play Console「应用完整性」→「应用签名」中的SHA-256值,而非本地上传密钥的SHA-256。复制正确值后重新更新Firebase App Check配置。明确指定Play Integrity提供者
当前activate()调用未指定Android提供者,发布版本需明确配置:await FirebaseAppCheck.instance.activate( androidProvider: AndroidProvider.playIntegrity, );debug模式可使用
AndroidProvider.debug,但release版本必须指定playIntegrity才能触发正确的验证逻辑。检查Firebase BoM版本兼容性
你使用的firebase-bom:30.5.0版本较旧,可能存在库兼容问题。尝试升级到最新稳定版BoM(如32.0.0),确保App Check与其他Firebase服务版本匹配。验证应用签名方式
若上传的是App Bundle且开启了Play签名,必须使用Play提供的签名密钥SHA-256;若为手动签名的APK,则使用本地签名密钥的SHA-256,避免密钥不匹配导致验证失败。确认Firebase与Play应用关联状态
检查Firebase项目设置中Android应用的包名与Play Store完全一致,且已完成Play应用所有权验证,确保两者关联正常。使用正式发布包测试
仅通过Play Store发布的包(含内部测试/封闭测试版本)才能触发Play Integrity验证,debug包或本地签名的release包无法通过验证,需用Play渠道获取的包测试。
内容的提问来源于stack exchange,提问作者faccio

