如何在Unity中写入Firebase数据库?

时间:2018-10-05 20:02:37

标签: c# unity3d firebase-realtime-database

我创建了一个脚本,用于在用户单击“创建帐户”按钮时将有关用户的一些基本信息写入Firebase数据库。使用Firebase的说明作为模板

https://firebase.google.com/docs/database/unity/save-data

我想出了这个脚本来检查数据库中是否已经存在电子邮件,如果没有,则写入一些数据。现在,按下该按钮时,将执行两个脚本,一个用于创建新用户,另一个用于将信息写入数据库。创建新用户的脚本可以正常运行,并显示在Firebase中,但这不是更新数据库。

执行脚本时,它可以正常运行,但不会更新数据库。

 public void AddNewUserData()
{
    string email = emailText.text;
    string level = "4".ToString();
    string score = "0".ToString();
    string round = "1".ToString();
    string lives = "3".ToString();

    if (string.IsNullOrEmpty(email))
    {
        DebugLog("Email already used");
        return;
    }

    string emailJson = JsonUtility.ToJson(email);
    string levelJson = JsonUtility.ToJson(level);
    string scoreJson = JsonUtility.ToJson(score);
    string roundJson = JsonUtility.ToJson(round);
    string livesJson = JsonUtility.ToJson(lives);

    DatabaseReference usersref = FirebaseDatabase.DefaultInstance.GetReference("Users");

    usersref.Child(emailJson).Child("level").SetRawJsonValueAsync(levelJson);
    usersref.Child(emailJson).Child("tokens").SetRawJsonValueAsync(tokensJson);
    usersref.Child(emailJson).Child("round").SetRawJsonValueAsync(roundJson);
    usersref.Child(emailJson).Child("lives").SetRawJsonValueAsync(livesJson);
}

0 个答案:

没有答案