我在 Android 上的 Flutter 应用程序中尝试实现 Firebase App Check 时遇到问题,以获取发布版本。对于调试,我可以从控制台获取调试令牌,当我将其添加到 firebase 时,请求是有效的。但是,我在发布时不断收到以下错误:
[firebase_app_check/unknown] t4.m:error returned from API. code: 403 body: App attestation failed.
已验证的请求来自调试版本,无效的请求来自发布版本。
我一直在网上查找,但我觉得有些东西要么丢失了,要么我丢失了一些东西,我遵循了官方文档。
这是我的 pubspec.yaml
firebase_core: ^2.7.1
firebase_app_check: ^0.2.2
我的main.dart
await Firebase.initializeApp(
options: DefaultFirebaseOptions.currentPlatform,
);
FirebaseFirestore.instance.settings =
const Settings(persistenceEnabled: true);
await FirebaseAppCheck.instance.activate(
androidProvider:
kDebugMode ? AndroidProvider.debug : AndroidProvider.playIntegrity);
await FirebaseAppCheck.instance.setTokenAutoRefreshEnabled(true);
在
android/app/build.gradle
:
dependencies {
implementation("com.google.firebase:firebase-appcheck-playintegrity")
implementation(platform("com.google.firebase:firebase-bom:32.8.0"))
}
我看到人们对 build.gradle 和 MainActivity 进行了更改,即使文档没有提及任何相关内容。
其他详细信息
我看过的一些链接:
有人可以指导我可能缺少的内容或建议任何进一步的故障排除步骤吗?任何帮助将不胜感激。
我遇到了这个SO问题,下面的答案是
If you are not distributed via Google Play, the Play Integrity Provider does not work with your Firebase app
是否是因为我没有上传具有播放完整性依赖项的捆绑包?
问题解决了吗?我尝试将谷歌播放控制台推入“内部测试”,但仍然遇到同样的问题。