gpt4 book ai didi

unity3d - 统一平台android取消订阅中的Firebase数据库不起作用

转载 作者:行者123 更新时间:2023-12-05 04:01:49 24 4
gpt4 key购买 nike

我使用的版本是:

Firebase 版本 5.4.2 和 5.5.0Unity版本2018.5.5f1

我是用childAdded在编辑器上注册或者退订都是正常的,但我无法在构建 apk 后取消订阅,每次添加数据时,它都会收到与订阅数相同的返回事件。

最佳答案

我遇到了类似的错误。我有这两个功能,它们在 unity 编辑器中运行良好,但在使用 APK 的 Android 设备上无法运行。

private void OnEnable ()
{
FirebaseDatabase.DefaultInstance.GetReference("/currentGame").ValueChanged += HandleComingGameChanges;
}

private void OnDisable ()
{
FirebaseDatabase.DefaultInstance.GetReference("/currentGame").ValueChanged -= HandleComingGameChanges;
}

所以我只是添加了一个 DatabaseReference 变量并订阅了该 OnEnable 函数并取消订阅了 GameObject-Disable 函数,它开始工作了。

这是伪代码。

private DatabaseReference reference;
private void Awake ()
{
reference = FirebaseDatabase.DefaultInstance.GetReference("/myReference");
}
private void OnEnable ()
{
reference.ValueChanged += HandleChanges;
}

private void OnDisable ()
{
reference.ValueChanged -= HandleChanges;
}

注意:我在 Awake 函数中初始化引用变量,因为它在 OnEnable 之前调用,而 Start 在 OnEnable 之后调用。

关于unity3d - 统一平台android取消订阅中的Firebase数据库不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54956811/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com