取消订阅问题
大家好,我在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()
函数是否起作用。有人遇到过同样的问题吗?
我正在使用
感谢您的阅读!