[Unity]

[Firebase] Firebase Database (1)

극꼼 2022. 4. 24. 13:42
반응형


1. Firebase 란?

2. Firebase에 Database 만들기

3. Unity 프로젝트에 Firebase 구성 파일 및 Firebase Unity SDK를 추가

 * 이후의 사용 방법과 코드는 다음 포스팅에서 이어서


1. Firebase 란?

Firebase란 구글(Google)이 소유하고 있는 모바일 애플리케이션 개발 플랫폼입니다. 아래와 같은 유용한 기능들을 제공하기 때문에 모바일 게임에서 정말 많이 선택되는 도구 중 하나입니다. 

* 앱 개발 기능

  1. 인증(Authentication): 사용자 로그인 및 ID 관리
  2. 클라우드 함수(Cloud Functions): 서버 없이 이벤트 위주로 동작하는 백엔드
  3. 클라우드 파이어스토어(Cloud Firestore): 클라우드에 호스팅 된 실시간의 비관계형(NoSQL) 데이터베이스
  4. 클라우드 스토리지(Cloud Storage): 거대하게 확장할 수 있는 파일 스토리지
  5. 파이어베이스 호스팅(Firebase Hosting): 전 세계를 대상으로 한 웹 호스팅
  6. 머신러닝 키트(ML Kit): 일반적인 머신러닝(ML) 작업을 위한 SDK
  7. 실시간 데이터베이스(Realtime Database): 클라우드에 호스팅 된 실시간의 비관계형(NoSQL) 데이터베이스

* 앱 키우기 기능

  1. 분석(Analytics): 사용자들이 누구이며, 그들이 앱을 이용하는 방식을 이해
  2. 예측(Predictions): 머신러닝을 적용하고 분석하여, 사용자들의 행동을 예측
  3. 클라우드 메시징(Cloud Messaging): 사용자들에게 메시지와 알림 사항을 전송
  4. 인앱 메시징(In-App Messaging): 활성 사용자들에게 타깃 메시지를 연결
  5. 원격 구성(Remote Config): 새로운 버전을 배포하지 않고도 앱의 설정을 바꾸고, 변경사항을 모니터링
  6. A/B 테스팅(A/B Testing): 마케팅 방식과 사용 적합성 테스트를 수행해서 가장 좋은 결과가 무엇인지를 확인
  7. 동적 링크(Dynamic Link): 네이티브 앱(native app, 플랫폼의 OS에 맞는 언어로 제작된 앱) 컨버전(conversion, 다른 플랫폼에서 사용할 수 있게 변환), 사용자 공유, 마케팅 캠페인 지원
  8. 앱 인덱싱(App Indexing): 구글 검색과 연동하여 사용자들을 유지하는데 도움

* 앱 개선 기능

  1. 테스트 랩(Test Lab): 클라우드에 호스팅 된 기기에서 다양한 규모로 앱 테스트를 자동화
  2. 비정상 종료 분석(Crashlytics): 앱이 비정상 종료되는 현상에 대한 명확한 판단과 조치
  3. 성능 모니터링(Performance Monitoring): 앱의 성능 이슈와 관련한 통찰력 확보

 


2. Firebase에 Database 만들기

위에 나온 기능 중, Realtime Database 를 만들어 사용해보도록 하겠습니다.

우선 파이어베이스 홈페이지로 들어가줍니다.

 

프로젝트 이름 만들기부터 시작하는데, 구글 클라우드와 연동이 되므로 구글 클라우드에 이미 만들어둔 프로젝트가 있다면 다음과 같이 선택할 수 있습니다. 

 

 

왼쪽 탭에서 '빌드 - Realtime Database' 페이지로 들어가서 '데이터베이스 만들기' 버튼을 눌러줍니다. 저는 잠금모드로 만들어주었습니다. 

 

* Firestore Database 와 Realtime Database의 차이점이 궁금하신 분은 아래 링크를 참고하세요.

https://firebase.google.com/docs/firestore/rtdb-vs-firestore?hl=ko 

 

데이터베이스 선택: Cloud Firestore 또는 실시간 데이터베이스  |  Firebase Documentation

Join Firebase at Google I/O online May 11-12, 2022. Register now 의견 보내기 데이터베이스 선택: Cloud Firestore 또는 실시간 데이터베이스 Firebase는 실시간 데이터 동기화를 지원하며 클라이언트에서 액세스할

firebase.google.com

 

 

데이터베이스를 만든 후, 아래의 +버튼을 눌러 데이터를 추가할 수 있습니다.

 


3. Unity 프로젝트에 Firebase 구성 파일 및 Firebase Unity SDK를 추가

이제 유니티 프로젝트에 파이어베이스를 연동하는 방법을 알아보겠습니다. 왼쪽 탭의 톱니바퀴 버튼을 누른 후 '프로젝트 설정'을 누르고, 앱 플랫폼을 선택해 프로젝트에 앱을 추가해줍니다. 

 

 

유니티에 google-service.json 파일과 파이어베이스 SDK를 추가하는 방법은 아래 링크에 있습니다. 

https://geukggom.tistory.com/153

 

[Google Play Console] 구글 플레이 게임 서비스 연동하는 법 2) Firebase 세팅

바로 이전 포스팅에서 유니티와 구글 플레이 콘솔에 구글 플레이 게임 서비스를 세팅하는 방법을 알아보았습니다. 이번 포스팅에서는 유니티에 필요한 작업과, 로그인과 랭킹을 연동하는 방법

geukggom.tistory.com

 

 

* firebase SDK를 다운받을 때, FirebaseDatabase 패키지를 임포트해줍니다. 

 


이상으로 글이 너무 길어질 것 같아 다음 포스팅에서 데이터를 어떻게 가져오고, 저장하는지 코드와 함께 알아보도록 하겠습니다.

 

반응형