Unity에서 Firebase RemoveConfig 사용해보기

사전준비

에셋설치


Firebase 콘솔의 RemoteConfig에 가기


테스트할 파라미터와 값을 추가


추가한 값을 게시


유니티 코드

Firebase RemoteConfig API

void Start() { Dictionary<string, object> defaults = new Dictionary<string, object>(); // These are the values that are used if we haven't fetched data from the // server yet, or if we ask for values that the server doesn't have: defaults.Add("propertyname_string", "default local string"); defaults.Add("propertyname_int", 1); defaults.Add("propertyname_float", 1.0); defaults.Add("propertyname_bool", false); Firebase.RemoteConfig.FirebaseRemoteConfig.SetDefaults(defaults); } public void OnClickFetchRemoteConfig() { Firebase.RemoteConfig.FirebaseRemoteConfig.FetchAsync().ContinueWith(task => { Debug.Log(string.Format("FirebaseRemoteConfig.FetchAsync::IsCompleted:{0} IsCanceled:{1} IsFaulted:{2}", task.IsCompleted, task.IsCanceled, task.IsFaulted)); Firebase.RemoteConfig.FirebaseRemoteConfig.ActivateFetched(); }); } public void OnClickGetValue() { Debug.Log(Firebase.RemoteConfig.FirebaseRemoteConfig.GetValue("propertyname_int").LongValue); }

Start함수가 첫 번째로 호출되면서, 디폴트 값을 넣는다.

참고로, Firebase RemoteConfig에서 받아온 값은 디폴트 값을 대체한다.

OnClickFetchRemoteConfig함수를 호출하면, Firebase RemoteConfig에서 저장한 값들을 받아온다.

OnClickGetValue함수를 호출하면, 현재 저장된 파라미터의 값을 얻어온다.


테스트 결과

Firebase RemoteConfig함수를 호출하기 전에, OnClickGetValue함수를 호출하면

디폴트 값인 1을 가져온다.


OnClickFetchRemoteConfig함수를 호출하고, OnClickGetValue함수를 호출하면

2를 가져온다.


앱 종료 후, OnClickGetValue함수를 호출하면

2를 가져온다.

08-03 10:52:36.062: I/Unity(1803): 1 08-03 10:52:36.062: I/Unity(1803): 08-03 10:52:36.062: I/Unity(1803): (Filename: ./artifacts/generated/common/runtime/DebugBindings.gen.cpp Line: 51) 08-03 10:52:39.012: I/Unity(1803): FirebaseRemoteConfig.FetchAsync::IsCompleted:True IsCanceled:False IsFaulted:False 08-03 10:52:39.012: I/Unity(1803): 08-03 10:52:39.012: I/Unity(1803): (Filename: ./artifacts/generated/common/runtime/DebugBindings.gen.cpp Line: 51) 08-03 10:52:40.142: I/Unity(1803): 2 08-03 10:52:40.142: I/Unity(1803): 08-03 10:52:40.142: I/Unity(1803): (Filename: ./artifacts/generated/common/runtime/DebugBindings.gen.cpp Line: 51)