728x90
https://firebase.google.com/docs?authuser=0&hl=ko
문서 | Firebase
Firebase SDK 참조, 통합 가이드, 샘플 코드, 라이브러리
firebase.google.com
https://firebase.google.com/docs/database/unity/start?authuser=0&hl=ko
Unity용 Firebase 실시간 데이터베이스 시작하기 | Firebase Documentation
의견 보내기 Unity용 Firebase 실시간 데이터베이스 시작하기 Firebase 실시간 데이터베이스는 NoSQL 클라우드 데이터베이스를 사용하여 데이터를 저장하고 동기화합니다. 모든 클라이언트에서 실시간
firebase.google.com
using System;
using System.Collections;
using System.Collections.Generic;
using System.Threading.Tasks;
using UnityEngine;
using Firebase;
using Firebase.Database;
using UnityEngine.UI;
public class Test_DB : MonoBehaviour
{
private DatabaseReference m_DB;
[SerializeField]
private Button m_Button_NewUser;
[SerializeField] private Button m_Button_LevelUp;
[SerializeField] private Button m_Button_LevelDown;
[SerializeField] private Button m_Button_DeleteUser;
private User m_User;
private void Awake()
{
m_Button_NewUser.onClick.AddListener(OnNewUser);
m_Button_LevelUp.onClick.AddListener(OnLevelUp);
m_Button_LevelDown.onClick.AddListener(OnLevelDown);
m_Button_DeleteUser.onClick.AddListener(OnDeleteUser);
}
// Start is called before the first frame update
void Start()
{
m_DB = FirebaseDatabase.DefaultInstance.RootReference;
// 계정 정보 로드
m_DB.Child("users").Child("0").GetValueAsync().ContinueWith(task =>
{
if (task.IsCompleted)
{
if (task.Result.Value == null)
OnNewUser(); // 없으면 신규계정 생성
else
m_User = JsonUtility.FromJson<User>(task.Result.GetRawJsonValue());
}
});
}
private void OnApplicationQuit()
{
m_DB.OnDisconnect();
}
// Update is called once per frame
void Update()
{
}
private void OnNewUser()
{
Write_NewUser("0", "네이브", 1);
}
private void OnDeleteUser()
{
m_DB.Child("users").Child("0").RemoveValueAsync();
}
private void OnLevelUp()
{
m_User.SetLevel(m_User.Level + 1);
SetValue_Level("0", m_User.Level);
}
private void OnLevelDown()
{
m_User.SetLevel(m_User.Level - 1);
SetValue_Level("0", m_User.Level);
}
void Write_NewUser(string userId, string nickname, int level)
{
var user = new User(nickname, level);
var json = JsonUtility.ToJson(user);
m_DB.Child("users").Child(userId).SetRawJsonValueAsync(json).ContinueWith(task =>
{
if (task.IsCompleted)
m_User = new User(nickname, level);
});
}
void SetValue_Level(string userId, int level)
{
m_DB.Child("users").Child(userId).Child("Level").SetValueAsync(level);
}
}
public class User
{
public string Nickname;
public int Level;
public User(string nickname, int level)
{
this.Nickname = nickname;
this.Level = level;
}
public void SetLevel(int level)
{
Level = level;
}
}
https://firebase.google.com/docs/crashlytics/get-started?authuser=2&platform=android
Firebase Crashlytics 시작하기 | Firebase Documentation
의견 보내기 Firebase Crashlytics 시작하기 iOS+ Android Flutter Unity 이 빠른 시작에서는 Firebase Crashlytics SDK를 사용해 앱에 Firebase Crashlytics를 설정하여 Firebase Console에서 포괄적인 비정상 종료 보고서를 확
firebase.google.com
728x90
'프로그래밍 > Unity' 카테고리의 다른 글
유니티 콜백 팝업 예제 (0) | 2022.07.18 |
---|---|
어드레서블 (Addressable) (0) | 2022.07.14 |
UGUI Advanced (Dynamic) ScrollView (0) | 2022.06.18 |
유니티쨩 URP 를 써보자 (0) | 2022.03.21 |
Unity - Obfuscator 메뉴얼 (0) | 2021.12.30 |
댓글