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

使用flutterfire configure配置Flutter项目时遇输入意外结束错误

解决FlutterFire Configure Android平台JSON解析异常问题

问题描述

在Flutter项目中执行flutterfire configure命令时,仅选择iOS平台可正常完成配置,同时配置Android平台时触发JSON解析异常,具体报错信息如下:

% flutterfire configure
i Found 1 Firebase projects.                                                                                             
✔ Select a Firebase project to configure your Flutter application with · //////////// (////////)                             
✔ Which platforms should your configuration support (use arrow keys & space to select)? · android, ios                   
i Firebase android app com./////./// registered.                                                                    
i Firebase ios app com./////./// registered.                                                                   
Unhandled exception:
FormatException: Unexpected end of input (at character 1)

^

#0      _ChunkedJsonParser.fail (dart:convert-patch/convert_patch.dart:1383:5)
#1      _ChunkedJsonParser.close (dart:convert-patch/convert_patch.dart:501:7)
#2      _parseJson (dart:convert-patch/convert_patch.dart:36:10)
#3      JsonDecoder.convert (dart:json.dart:612:36)
#4      FirebaseAndroidOptions.projectIdFromFileContents (package:flutterfire_cli/src/firebase/firebase_android_options.dart:29:29)
#5      FirebaseAndroidGradlePlugins.applyGoogleServicesPlugin (package:flutterfire_cli/src/firebase/firebase_android_gradle_plugins.dart:101:50)
<asynchronous suspension>
#6      FirebaseAndroidGradlePlugins.apply (package:flutterfire_cli/src/firebase/firebase_android_gradle_plugins.dart:240:5)
<asynchronous suspension>

解决方案

  • 校验并替换google-services.json文件
    报错核心是CLI无法解析Android配置文件,大概率是android/app/google-services.json为空或损坏。前往Firebase控制台找到对应Android应用,重新下载完整的google-services.json,替换项目中同名文件。

  • 清理并重装FlutterFire CLI
    执行以下命令清理缓存并更新CLI:

    dart pub cache clean
    dart pub global activate flutterfire_cli
    

    完成后重新运行flutterfire configure。

  • 验证Android项目配置一致性

    • 确保Firebase控制台注册的Android应用包名,与项目android/app/src/main/AndroidManifest.xml中的package属性完全匹配;
    • 检查android/build.gradle中是否添加Google服务插件依赖:
      dependencies {
          classpath 'com.google.gms:google-services:4.4.0' // 可使用最新稳定版本
      }
      
    • 确认android/app/build.gradle末尾添加插件引用:
      apply plugin: 'com.google.gms.google-services'
      
  • 手动完成Firebase配置(绕过CLI)
    如果CLI问题持续,可手动配置:

    1. 将下载好的google-services.json放入android/app目录;
    2. 在pubspec.yaml中添加依赖:
      dependencies:
        firebase_core: ^2.24.0 // 版本按需选择
      
    3. 执行flutter pub get;
    4. 在main.dart中初始化Firebase:
      import 'package:firebase_core/firebase_core.dart';
      import 'package:flutter/material.dart';
      
      void main() async {
        WidgetsFlutterBinding.ensureInitialized();
        await Firebase.initializeApp();
        runApp(const MyApp());
      }
      
      class MyApp extends StatelessWidget {
        const MyApp({super.key});
      
        @override
        Widget build(BuildContext context) {
          return MaterialApp(
            home: Scaffold(body: Center(child: Text('Firebase Test'))),
          );
        }
      }
      
  • 检查项目目录权限
    确保当前用户对项目的android目录有读写权限,避免CLI无法读取或写入配置文件。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.20 09:45:41