본문 바로가기
tips/유니티 & 개발

유니티에서 파이어베이스 SDK 초기화 및 애널리틱스

by 디지털 수공업자 2022. 3. 16.
반응형

파이어베이스 콘솔에서 프로젝트를 생성하고 유니티 아이콘을 눌러 앱을 추가합니다.

파이어베이스 콘솔의 프로젝트 설정에서 iOS는 iOS ID를 안드로이드는 패키지 이름을 입력하고, 각각의 구성파일 GoogleService-Info.plistgoogle-services.json파일을 다운로드하여 유니티의 StreamingAssets폴더를 생성하고 넣어줍니다.

 

파이어베이스 SDK 유니티 플러그인 설치를 하고 다음 스크립트로 초기화 합니다.

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using Firebase ;

namespace Fb {

    public class fb : MonoBehaviour {
        
        FirebaseApp app ;

        void Start() {

            Firebase.FirebaseApp.CheckAndFixDependenciesAsync().ContinueWith(task => {
            var dependencyStatus = task.Result;
            if (dependencyStatus == Firebase.DependencyStatus.Available) {
                // Create and hold a reference to your FirebaseApp,
                // where app is a Firebase.FirebaseApp property of your application class.
                app = Firebase.FirebaseApp.DefaultInstance;

                // Set a flag here to indicate whether Firebase is ready to use by your app.
            } else {
                UnityEngine.Debug.LogError(System.String.Format(
                "Could not resolve all Firebase dependencies: {0}", dependencyStatus));
                // Firebase Unity SDK is not safe to use here.
            }
            });
            
        }

    }

}

 

초기화 후에는 아래의 LogEvent() 메서드로 이벤트 로깅을 시작합니다.

// Log an event with no parameters.
Firebase.Analytics.FirebaseAnalytics
  .LogEvent(Firebase.Analytics.FirebaseAnalytics.EventLogin);

// Log an event with a float parameter
Firebase.Analytics.FirebaseAnalytics
  .LogEvent("progress", "percent", 0.4f);

// Log an event with an int parameter.
Firebase.Analytics.FirebaseAnalytics
  .LogEvent(
    Firebase.Analytics.FirebaseAnalytics.EventPostScore,
    Firebase.Analytics.FirebaseAnalytics.ParameterScore,
    42
  );

// Log an event with a string parameter.
Firebase.Analytics.FirebaseAnalytics
  .LogEvent(
    Firebase.Analytics.FirebaseAnalytics.EventJoinGroup,
    Firebase.Analytics.FirebaseAnalytics.ParameterGroupId,
    "spoon_welders"
  );

// Log an event with multiple parameters, passed as a struct:
Firebase.Analytics.Parameter[] LevelUpParameters = {
  new Firebase.Analytics.Parameter(
    Firebase.Analytics.FirebaseAnalytics.ParameterLevel, 5),
  new Firebase.Analytics.Parameter(
    Firebase.Analytics.FirebaseAnalytics.ParameterCharacter, "mrspoon"),
  new Firebase.Analytics.Parameter(
    "hit_accuracy", 3.14f)
};
Firebase.Analytics.FirebaseAnalytics.LogEvent(
  Firebase.Analytics.FirebaseAnalytics.EventLevelUp,
  LevelUpParameters);

파이어베이스에 미리 준비된 인수유형을 사용하거나, 임의의 string으로 유형을 만들어 사용할 수 있습니다.

단순하게 LogEvent(문자열, 문자열, 문자나 숫자) 로 기록할 수 있습니다.

 


유니티에서 파이어베이스 애널리틱스 시작하기 : https://firebase.google.com/docs/analytics/unity/start

파이어베이스 애널리틱스 인수 유형 : https://firebase.google.com/docs/reference/unity/class/firebase/analytics/firebase-analytics#logevent

반응형

댓글