Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/firebase/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# Unity Firebase值已更改_C#_Firebase_Unity3d_Firebase Realtime Database - Fatal编程技术网

C# Unity Firebase值已更改

C# Unity Firebase值已更改,c#,firebase,unity3d,firebase-realtime-database,C#,Firebase,Unity3d,Firebase Realtime Database,因此,我试图通过Unity中的以下代码从firebase接收数据: public void Start() { FirebaseApp.DefaultInstance.SetEditorDatabaseUrl("https://unity-f82f6.firebaseio.com"); reference = FirebaseDatabase.DefaultInstance.RootReference; FirebaseDatabase.DefaultInstanc

因此,我试图通过Unity中的以下代码从firebase接收数据:

public void Start()
{
    FirebaseApp.DefaultInstance.SetEditorDatabaseUrl("https://unity-f82f6.firebaseio.com");

    reference = FirebaseDatabase.DefaultInstance.RootReference;


    FirebaseDatabase.DefaultInstance.GetReference("Leaders").ValueChanged += HandleValueChanged;


}

void HandleValueChanged(object sender, ValueChangedEventArgs args)
{
    if (args.DatabaseError != null)
    {
        Debug.LogError(args.DatabaseError.Message);
        return;
    }
    Debug.Log(args.Snapshot);
}

我想让它告诉我“领导者”的新值,当它发生变化时,它只会触发一次,我找不到一个能让它多次运行的解决方案。

以下是改变的解决方案:(在我的项目上正常工作)

与:


以下是改变的解决方案:(关于我的项目工作ok)

与:


应该调用您的
HandleValueChanged
:立即从数据库调用
Leaders
的当前值,然后在
Leaders
下的任何内容发生更改时调用。如果后者没有发生在您身上,您能解释一下如何测试它吗?应该调用您的
HandleValueChanged
:立即使用数据库中
Leaders
的当前值,然后在
Leaders
下的任何更改时调用。如果后者没有发生在你身上,你能解释一下你是如何测试它的吗?
FirebaseDatabase.DefaultInstance.GetReference("Leaders").ValueChanged += HandleValueChanged;
reference.GetReference("Leaders").ValueChanged += HandleValueChanged;