Flutter 앱에 Firebase 추가 중 에러 발생

2025. 2. 18. 13:22·Mobile

https://firebase.google.com/docs/flutter/setup?hl=ko&_gl=1*z0zhvi*_up*MQ..*_ga*MTczODMwNjI4Ni4xNzM5ODAxODMy*_ga_CW55HF8NVT*MTczOTgwMTgzMi4xLjAuMTczOTgwMTgzMi4wLjAuMA..&platform=android

 

Flutter 앱에 Firebase 추가

의견 보내기 컬렉션을 사용해 정리하기 내 환경설정을 기준으로 콘텐츠를 저장하고 분류하세요. Flutter 앱에 Firebase 추가 plat_ios plat_android plat_web iOS+ Android 웹 기본 요건 아직 Flutter 앱이 없다면

firebase.google.com

 

Firebase 문서에 따라 진행중인데

문서에 나온것처럼 단계별로 진행중입니다.

 

3단계: 앱에서 Firebase 초기화를 진행하던 중

3. lib/main.dart 파일에서 Firebase core 플러그인 및 앞에서 생성한 구성 파일을 가져옵니다.

에 따라

import 'package:firebase_core/firebase_core.dart';
import 'firebase_options.dart';

 

를 추가 하고

4. lib/main.dart 파일에서 구성 파일로 내보낸 DefaultFirebaseOptions 객체를 사용하여 Firebase를 초기화합니다.
    WidgetsFlutterBinding.ensureInitialized();
    await Firebase.initializeApp(
      options: DefaultFirebaseOptions.currentPlatform,
    );

 

를 했는데..

여기서 firebase_options.dart 가 제대로 import 되지 않아서 그런지 이 부분에서 오류 발생

그리고 DefaultFirebaseOptions 도 인식하지 못하는 현상이 발생하였습니다.

 

Windsuf 에서 제공하는 Claude 3.5 Sonnet 로 수정을 요청하니

 

1. pubspec.yaml 에서 

firebase_core: ^3.11.0
  =>
firebase_core: ^2.24.2
firebase_auth: ^4.15.3

 

이렇게 변경을 하고

 

2. 다시 command line 에서 아래 명령을 실행

flutter pub get
dart pub global activate flutterfire_cli
flutterfire configure

 

추가로 firebase_options.dart 를 새로 만들어 줬다.

import 'package:firebase_core/firebase_core.dart' show FirebaseOptions;
import 'package:flutter/foundation.dart'
    show defaultTargetPlatform, kIsWeb, TargetPlatform;

class DefaultFirebaseOptions {
  static FirebaseOptions get currentPlatform {
    // TODO: Replace with your Firebase configuration
    throw UnsupportedError(
      'DefaultFirebaseOptions have not been configured for this platform - '
      'you need to follow the Firebase setup instructions and run "flutterfire configure".',
    );
  }
}

 

암튼, 어제는 제대로 수정을 못하더니..

오늘 다시 하니 일단은 오류가 더 이상 발생하지 않고 제대로 앱도 실행이 되었다.

 

하지만, 다른 에러가 발생해서 다시 firebase 관련 소스를 삭제하고 처음부터 다시 시작했다.

드디어 해결!!!

이건 firebase_options.dart 이 파일에서 문제가 있었던 것이다.

 

flutterfire configure

 

원래 이 명령어가 제대로 실행되었으면 firebase_options.dart 이 자동으로 만들어졌을건데,

처음에 만든것이 문제였던것이다.

 

// File generated by FlutterFire CLI.
// ignore_for_file: type=lint
import 'package:firebase_core/firebase_core.dart' show FirebaseOptions;
import 'package:flutter/foundation.dart'
    show defaultTargetPlatform, kIsWeb, TargetPlatform;

/// Default [FirebaseOptions] for use with your Firebase apps.
///
/// Example:
/// ```dart
/// import 'firebase_options.dart';
/// // ...
/// await Firebase.initializeApp(
///   options: DefaultFirebaseOptions.currentPlatform,
/// );
/// ```
class DefaultFirebaseOptions {
  static FirebaseOptions get currentPlatform {
    if (kIsWeb) {
      return web;
    }
    switch (defaultTargetPlatform) {
      case TargetPlatform.android:
        return android;
      case TargetPlatform.iOS:
        return ios;
      case TargetPlatform.macOS:
        return macos;
      case TargetPlatform.windows:
        return windows;
      case TargetPlatform.linux:
        throw UnsupportedError(
          'DefaultFirebaseOptions have not been configured for linux - '
          'you can reconfigure this by running the FlutterFire CLI again.',
        );
      default:
        throw UnsupportedError(
          'DefaultFirebaseOptions are not supported for this platform.',
        );
    }
  }

  static const FirebaseOptions web = FirebaseOptions(
	...
  );

  static const FirebaseOptions android = FirebaseOptions(
	...
  );

  static const FirebaseOptions ios = FirebaseOptions(
	...
  );

  static const FirebaseOptions macos = FirebaseOptions(
	...
  );

  static const FirebaseOptions windows = FirebaseOptions(
	...
  );
}
저작자표시 (새창열림)

'Mobile' 카테고리의 다른 글

FirebaseAuth 에서 Email/Password 오류 메시지에 관해서  (0) 2025.02.20
flutter 에서 singleton 패턴 구현하는 방법  (0) 2025.01.31
네트워크가 연결되어 있지 않을때 사용하는 Room  (0) 2023.01.18
'Mobile' 카테고리의 다른 글
  • FirebaseAuth 에서 Email/Password 오류 메시지에 관해서
  • flutter 에서 singleton 패턴 구현하는 방법
  • 네트워크가 연결되어 있지 않을때 사용하는 Room
크레비즈
크레비즈
  • 크레비즈
    크레비즈 커뮤니티
    크레비즈
  • 전체
    오늘
    어제
    • 분류 전체보기 (68)
      • Front-end (13)
      • Back-end (7)
      • Python (11)
      • AI 공부 (7)
      • Mobile (4)
      • Script (4)
      • 인프라 (5)
      • 참고할 내용 (12)
      • reference page (0)
      • Project (3)
  • 블로그 메뉴

    • 홈
    • 태그
    • 미디어로그
    • 위치로그
    • 방명록
  • 링크

    • Spring: the source for modern java
  • 공지사항

    • 크레비즈 커뮤니티
  • 인기 글

  • 태그

    claude 3.7 sonnet
    PYTHON
    Claude
    claude sonnet
    Access Token
    ChatGPT
    Gemini
    vue
    Refresh Token
    딥러닝
    windsurf
    fastapi
    vuejs
    CNN
    토큰
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
크레비즈
Flutter 앱에 Firebase 추가 중 에러 발생
상단으로

티스토리툴바