Fluttor
Flutter 프로젝트에 Firebase 연결
청춘고양이
2024. 6. 25. 14:58
반응형
Flutter 프로젝트에 Firebase를 연결하는 방법에 대해 알아보겠습니다. 이 포스팅은 Firebase를 Flutter 앱에 통합하는 기본 단계를 안내합니다.
1. Firebase 프로젝트 생성
- Firebase 콘솔로 이동하여 새로운 프로젝트를 생성합니다.
- 프로젝트 이름을 입력하고 필요한 설정을 완료합니다.
2. Firebase 설정 파일 다운로드
Android
- Firebase 콘솔에서 프로젝트 설정으로 이동합니다.
- Android 앱을 추가하고 패키지 이름을 입력합니다.
- google-services.json 파일을 다운로드하여 android/app 디렉토리에 복사합니다.
iOS
- Firebase 콘솔에서 프로젝트 설정으로 이동합니다.
- iOS 앱을 추가하고 iOS 번들 ID를 입력합니다.
- GoogleService-Info.plist 파일을 다운로드하여 ios/Runner 디렉토리에 복사합니다.
3. Firebase CLI 초기화
터미널을 열고 Firebase CLI를 설치합니다.
npm install -g firebase-tools
Firebase에 로그인합니다.
firebase login
Firebase 프로젝트를 초기화합니다.
firebase init
4. Flutter 프로젝트에 Firebase 패키지 추가
pubspec.yaml 파일을 열고 Firebase 관련 패키지를 추가합니다.
최신 버전 번호는 pub.dev에서 확인할 수 있습니다.
패키지를 설치합니다.
flutter pub get
5. Flutter 프로젝트 설정
Android
android/build.gradle 파일을 열고 다음을 추가합니다.
android/app/build.gradle 파일을 열고 다음을 추가합니다.
iOS
ios/Podfile 파일을 열고 다음을 추가합니다.
platform :ios, '10.0'
# CocoaPods analytics sends network stats synchronously affecting flutter build latency.
ENV['COCOAPODS_DISABLE_STATS'] = 'true'
project 'Runner', {
'Debug' => :debug,
'Profile' => :release,
'Release' => :release,
}
install! 'cocoapods', :generate_multiple_pod_projects => true
def parse_KV_file(file, separator='=')
file_abs_path = File.expand_path(file)
if !File.exists? file_abs_path
return [];
end
gen = open(file_abs_path).read
return gen.split("\n").map{|line| line.strip.split(separator)}.map{|pair| [pair[0], pair[1]]}.to_h
end
target 'Runner' do
use_frameworks!
use_modular_headers!
# Flutter Pod
flutter_install_all_ios_pods File.dirname(File.realpath(__FILE__))
# Firebase Pods
pod 'Firebase/Core'
pod 'Firebase/Auth'
pod 'Firebase/Firestore'
end
post_install do |installer|
installer.pods_project.targets.each do |target|
flutter_additional_ios_build_settings(target)
target.build_configurations.each do |config|
config.build_settings['EXCLUDED_ARCHS[sdk=iphonesimulator*]'] = 'arm64'
end
end
end
6. Flutter 코드에서 Firebase 초기화
lib/main.dart 파일에서 Firebase를 초기화합니다.
import 'package:firebase_core/firebase_core.dart';
import 'package:flutter/material.dart';
void main() async {
WidgetsFlutterBinding.ensureInitialized();
await Firebase.initializeApp();
runApp(MyApp());
}
class MyApp extends StatelessWidget {
@override
Widget build(BuildContext context) {
return MaterialApp(
title: 'Flutter Firebase',
theme: ThemeData(
primarySwatch: Colors.blue,
),
home: MyHomePage(),
);
}
}
class MyHomePage extends StatelessWidget {
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(
title: Text('Flutter Firebase Home'),
),
body: Center(
child: Text('Hello, Firebase!'),
),
);
}
}
7. 앱 실행
모든 설정이 완료되면 Flutter 앱을 실행합니다.
flutter run
이제 Firebase가 Flutter 프로젝트에 연결되고 Firebase 서비스를 사용할 수 있습니다.
마무리
필자는 킹 갓 IntelliJ IDEA를 사용하여 Flutter를 설치하고 구동했습니다. IntelliJ IDEA를 사용하면 좀 더 편하게 설치하고 관리할 수 있으니 참고하시기 바랍니다.
이 글이 도움이 되었기를 바랍니다. Firebase와 Flutter를 통합하는 과정에서 발생할 수 있는 문제나 질문이 있다면 언제든지 댓글로 알려주세요!
반응형