You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Flutter项目初始化firebase_options.dart遇FirebaseError: Unable to parse JSON错误求助

Flutter Firebase推送通知初始化firebase_options.dart错误解决方案
  • 核对Firebase项目配置

    • 重新从Firebase控制台下载对应平台的配置文件:Android端将google-services.json放在android/app目录,iOS端将GoogleService-Info.plist放在Runner目录,确保文件未被修改、路径正确。
    • 重新执行flutterfire configure命令,选择正确的Firebase项目和目标平台,确认生成的firebase_options.dart内容与控制台配置匹配。
  • 检查依赖版本兼容性

    • 在pubspec.yaml中使用与当前Flutter SDK兼容的firebase_core和firebase_messaging版本,示例配置:
      firebase_core: ^2.24.2
      firebase_messaging: ^14.7.11
      
    • 执行flutter clean清理项目缓存,再运行flutter pub get拉取依赖,之后重启IDE。
  • 根据firebase-debug.log定位问题
    从日志中提取关键错误信息,针对性解决:

    • 若提示Missing google-services.json:检查Android配置文件是否存在、内容是否完整,或重新下载替换。
    • 若提示Invalid API key:对比firebase_options.dart中的API密钥与Firebase控制台中的值是否一致,不一致则重新生成配置文件。
    • iOS平台错误:在Info.plist中添加推送权限及后台模式配置:
      <key>NSRemoteNotificationUsageDescription</key>
      <string>接收推送通知获取最新消息</string>
      <key>UIBackgroundModes</key>
      <array>
          <string>remote-notification</string>
      </array>
      
    • Android平台错误:在AndroidManifest.xml中注册消息服务:
      <service
          android:name=".MyFirebaseMessagingService"
          android:exported="false">
          <intent-filter>
              <action android:name="com.google.firebase.MESSAGING_EVENT" />
          </intent-filter>
      </service>
      
  • 验证初始化代码
    确保main.dart中Firebase初始化代码正确:

    void main() async {
      WidgetsFlutterBinding.ensureInitialized();
      await Firebase.initializeApp(
        options: DefaultFirebaseOptions.currentPlatform,
      );
      runApp(const MyApp());
    }
    

内容的提问来源于stack exchange,提问作者Mohebbikhah

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.22 16:27:09