Flutter 的 Android 发布版本中出现 Firebase 应用程序检查错误

问题描述 投票:0回答:1

我在 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 进行了更改,即使文档没有提及任何相关内容。

其他详细信息

  • Firebase 中我的应用程序的 SHA-256 密钥与从 Google Play Console 获取的应用程序签名密钥相匹配。
  • Firebase 项目链接到与 Google Play Console 关联的 Google Cloud 项目。
  • 我的应用程序的 SHA-256 应用程序签名密钥已在 Firebase 应用程序检查的“播放完整性”部分中正确输入。
  • 在 Google Play 控制台的“应用程序完整性”部分,我似乎尚未完成 Play Integrity API 的步骤,但在查看按钮随附的文档后,我认为当我上传在我的 build.gradle 中有依赖项的包,所以我不认为这是我的问题的情况,(https://developer.android.com/google/play/integrity/setup#integrate-in-app

我看过的一些链接:

有人可以指导我可能缺少的内容或建议任何进一步的故障排除步骤吗?任何帮助将不胜感激。

更新

我遇到了这个SO问题,下面的答案是

If you are not distributed via Google Play, the Play Integrity Provider does not work with your Firebase app
是否是因为我没有上传具有播放完整性依赖项的捆绑包?

Firebase AppCheck 无法与 PlayIntegrity 提供商一起使用

android flutter firebase firebase-app-check
1个回答
0
投票

问题解决了吗?我尝试将谷歌播放控制台推入“内部测试”,但仍然遇到同样的问题。

© www.soinside.com 2019 - 2024. All rights reserved.