오늘은 저번 벨로그 플러터 프로젝트 시작 기초 설정에 이어서 Flutter프로젝트에 Firebase 연동해볼게요!
플러터 프로젝트 기초 설정하는 저번 벨로그가 궁금하다면?
-> https://velog.io/@juice/Flutter-%EC%8B%9C%EC%9E%91%ED%95%98%EA%B8%B0
Google에서 제공하는 클라우드 기반의 개발 플랫폼으로, 앱&웹 개발을 위한 다양한 도구와 서비스를 제공합니다. 웹 호스팅, oauth 로그인 등 많은 기능들을 제공해주는데, 저에게 가장 큰 장점은 DB를 무료로, 편하게 사용할 수 있다는 점인것 같습니다.

콘솔에 들어가면, 제가 생성한 프로젝트 들을 볼 수 있는데, 프로젝트 생성-> 프로젝트 이름으로 변경하고 analytics 기능 사용하고 싶은 분들은 사용하시면 됩니다. 저는 사용 안할거기 때문에 끄고 생성했습니다.

생성 후 Flutter로고 클릭

Firebase CLI 설치

Vscode 혹은 터미널 편하신 곳에서 설치해주시면 됩니다.

두 명령어들 순서대로 프로젝트 터미널에서 실행

끝 부분에 export ~하는거 나올텐데

이 warning은 Flutter의 패키지 관리 도구인 pub이 실행 파일을 사용자의 홈 디렉토리 내 .pub-cache/bin 경로에 설치했지만, 이 경로가 현재 사용자의 시스템 환경 변수 PATH에 포함되어 있지 않다는 것을 알려줍니다. 그래서 터미널이나 콘솔에서 직접 이 실행 파일들을 사용할 수 없는 상황입니다.
-> 터미널에 export PATH 부분 복붙합니다.

하면 설치 완료!
설치 완료되면 lib폴더 안에 firebase_option.dart파일이 생기고 에러들이 있을겁니다. 이는 firebase에 대한 플러그인(패키지)를 설치하지 않아서 그런겁니다

-> pub.dev에서 설치해주기

flutter pub add firebase_core
설치하면 에러가 없어진 것을 확인할 수 있습니다!

여기서 끝이 아니라 main.dart에서 앱이 firebase 연동 앱이라는 것 알려주기
void main() async{
WidgetsFlutterBinding.ensureInitialized();
await Firebase.initializeApp();
runApp(const MtGame());
}
여기서 async와 await이라는 것이 보일텐데
비동기 연산으로 간단히 말하면 async{}로 감싸진 함수 아래에서 await이 붙은 부분이 완전히 처리되어야 그다음 코드 줄로 넘어간다는 뜻입니다! 위 코드로 보면 firebase로 app 초기화가 완료될 때까지 서비스가 잠시 중지되는것!
여기까지 해주시면 Flutter Project에 Firebase연동은 끝입니다!