Firebase实时数据库和统一性上的退订问题

时间:2019-07-16 08:55:01

标签: firebase unity3d firebase-realtime-database

取消订阅问题

大家好,我在Unity中使用实时数据库。我编写了一个简单的代码,如下所示:


void Start()
{
    FirebaseDatabase.DefaultInstance
        .GetReference("/test")
        .ValueChanged += HandleValueChanged;

    UnsubscribeButton.onClick.AddListener(delegate { Unsubscribe(); });
}

private void Unsubscribe()
{
    try
    {
        FirebaseDatabase.DefaultInstance
            .GetReference("/test")
            .ValueChanged -= HandleValueChanged;
    } catch (Exception ex)
    {
        Debug.LogError(ex.Message);
    }
}

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

    Debug.Log(args.Snapshot.Value);
}

但是,即使单击取消订阅按钮,我仍会继续听取值的更改。当然,我已经检查过Unsubscribe()函数是否起作用。有人遇到过同样的问题吗?

我正在使用

  • Unity 2019.1.10f1
  • .Net4
  • Firebase 6.2.1

感谢您的阅读!

0 个答案:

没有答案