返回

Flutter 中 \

Android

如何在 Flutter 中解决“缺少 google_app_id. Firebase Analytics 已禁用”错误

简介

在 Flutter 应用中,当你试图向设备发送通知时,可能会遇到以下错误:

E/FA      ( 8876): Missing google_app_id. Firebase Analytics disabled. See ...

这表明你的应用缺少 Google 应用程序 ID,导致 Firebase Analytics 被禁用。本文将深入探讨此错误的原因并提供分步解决方案。

错误原因

此错误通常发生在以下情况下:

  • Google 应用程序 ID 未正确配置
  • Firebase 依赖项未添加到项目中
  • Google 服务 JSON 文件未包含在项目中

解决步骤

解决此错误需要遵循以下步骤:

1. 验证依赖项

确保你的 Flutter 项目中包含以下依赖项:

firebase_analytics: ^9.4.0
firebase_messaging: ^12.0.0

2. 添加 Google 服务 JSON 文件

将你的 Google 服务 JSON 文件(google-services.json)添加到你的 Flutter 项目中的以下路径:

ProjectName/android/app/

3. 检查 Gradle 文件

ProjectName/android/app/build.gradle:

确保 build.gradle 文件包含以下行:

apply plugin: 'com.android.application'
apply plugin: 'com.google.gms.google-services'

ProjectName/android/build.gradle:

确保 build.gradle 文件包含以下行:

classpath 'com.google.gms:google-services:4.3.13'

4. 添加缺少的依赖项

检查你的 pubspec.yaml 文件是否包含以下依赖项:

dependencies:
  firebase_analytics: ^9.4.0
  firebase_messaging: ^12.0.0

5. 确保已配置 Google 应用程序 ID

在你的 AndroidManifest.xml 文件中,确保已正确配置 android:value 属性:

<application
    android:label="ProjectName"
    android:icon="@mipmap/ic_launcher"
    android:name="${applicationName}"
    android:value="@string/google_app_id">

6. 重新运行应用

完成上述步骤后,重新运行你的 Flutter 应用。

其他提示

  • 确保已在 Firebase 控制台中注册你的应用并启用了 Firebase Analytics。
  • 确保你的设备已连接到互联网。
  • 尝试清除 Flutter 应用的缓存和数据。
  • 尝试在设备上卸载并重新安装 Flutter 应用。

结论

通过遵循这些步骤,你可以解决 Flutter 应用中的“缺少 google_app_id. Firebase Analytics 已禁用”错误。记住保持 Google 应用程序 ID 的正确配置并确保已包含必要的 Firebase 依赖项。

常见问题解答

  1. 错误仍存在怎么办?
  • 尝试重新同步你的项目:flutter cleanflutter pub getflutter run
  • 确保你使用的是最新版本的 Firebase 插件。
  • 检查是否有其他错误消息或警告。
  1. 如何在 Firebase 控制台中启用 Firebase Analytics?
  • 登录 Firebase 控制台并转到“Analytics”选项卡。
  • 单击“启用 Google Analytics”按钮。
  1. 我的设备为何未连接到互联网?
  • 检查你的设备是否已连接到 Wi-Fi 或移动数据。
  • 尝试使用其他设备或网络。
  1. 如何清除 Flutter 应用的缓存和数据?
  • 转到“设置”>“应用程序”>选择你的 Flutter 应用。
  • 单击“存储”>“清除缓存”和“清除数据”。
  1. 如何卸载和重新安装 Flutter 应用?
  • 转到“设置”>“应用程序”>选择你的 Flutter 应用。
  • 单击“卸载”。
  • 从应用商店重新安装应用。