[Flutter] Firebase를 사용한 Flutter 애플리케이션 개발하기

StudipU·2024년 2월 28일
0

Firebase는 Google에서 제공하는 백엔드 서비스 플랫폼으로, 앱 개발자가 서버 및 인프라를 구축하지 않고도 앱의 다양한 기능을 개발할 수 있도록 지원합니다. 이 글에서는 Firebase를 사용하여 Flutter 애플리케이션을 개발하는 방법에 대해 알아보겠습니다.

1. Firebase 설정 🐦

Firebase를 Flutter 애플리케이션에 통합하려면 먼저 Firebase 콘솔에서 프로젝트를 생성해야 합니다. 그런 다음 Firebase 프로젝트에 원하는 Firebase 서비스를 추가하고 구성해야 합니다. 이후 Firebase SDK를 프로젝트에 추가하여 Firebase 서비스와 통신할 수 있습니다.

Firebase 설정하는 방법은 아래 블로그에 절차별 설명이 있습니다.
vue image

2. Flutter 애플리케이션에 Firebase 통합 🐨

Flutter 애플리케이션에 Firebase를 통합하려면 firebase_core 패키지를 사용해 Firebase를 초기화해야 합니다. 이는 Firebase 서비스와 통신하기 위한 기본적인 설정을 담당합니다.

import 'package:firebase_core/firebase_core.dart';
import 'package:flutter/material.dart';

void main() async {
  WidgetsFlutterBinding.ensureInitialized();
  await Firebase.initializeApp();
  runApp(MyApp());
}

위 코드에서 Firebase.initializeApp() 메서드를 호출하여 Firebase를 초기화합니다. WidgetsFlutterBinding.ensureInitialized()는 Flutter 애플리케이션의 바인딩이 초기화되었는지 확인하는 역할을 합니다.

3. MaterialApp 설정 🐴

Flutter 애플리케이션의 라우팅 및 화면 구성은 MaterialApp 위젯을 사용하여 정의됩니다. 아래는 MaterialApp을 설정하는 main.dart 코드입니다.

import 'package:flutter/material.dart';
import 'package:military_bookstore/authentication/MyPageWrapper.dart';
import 'package:military_bookstore/screen/admin_screen.dart';
import 'package:military_bookstore/screen/bookworm_rank_screen.dart';
import 'package:military_bookstore/screen/create_account_screen.dart';
import 'package:military_bookstore/screen/finished_book_list_screen.dart';
import 'package:military_bookstore/screen/login_screen.dart';
import 'package:military_bookstore/screen/main_screen.dart';
import 'package:military_bookstore/screen/splash_screen.dart';
import 'package:military_bookstore/user/AccountProvider.dart';
import 'package:provider/provider.dart';

void main() async {
  WidgetsFlutterBinding.ensureInitialized();
  await Firebase.initializeApp();
  runApp(MyApp());
}

class MyApp extends StatelessWidget {
  
  Widget build(BuildContext context) {
    return MaterialApp(
        title: 'Millitary Bookstore',
        debugShowCheckedModeBanner: false,
        routes: {
          '/': (context) => SplashScreen(),
          '/main':(context) => MainScreen(),
          '/account':(context) => MyPageWrapper(),
          '/login':(context) => LoginScreen(),
          '/signup':(context) => CreateAccountScreen(),
          '/finishedBook':(context) => FinishedBookListScreen(),
          '/bookwormRank':(context) => BookwormScreen(),
          '/admin':(context) => AdminScreen(),
        },
    );
  }
}

4. 화면 구성 및 기능 구현 🦄

각 화면에 대한 구현은 해당 화면의 코드에서 이루어집니다. 위 코드에서는 여러 화면을 라우팅하여 애플리케이션의 다양한 기능을 구현하고 있습니다.

5. 결론 😎

위의 코드를 통해 Firebase를 사용한 Flutter 애플리케이션의 구성과 기본적인 화면 구성 방법을 알아보았습니다. Firebase를 통합하여 사용자 인증, 데이터베이스, 클라우드 스토리지 등 다양한 기능을 구현할 수 있습니다. 필요에 따라 Firebase의 다른 기능을 추가하고 활용하여 원하는 기능을 구현할 수 있습니다. Firebase는 실시간 데이터베이스인 Firestore와 같은 기능도 제공하여 애플리케이션의 성능을 향상시키고 사용자 경험을 개선할 수 있습니다.

profile
컴공 대학생이 군대에서 작성하는 앱 개발 블로그

0개의 댓글