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

标签 unity3d firebase-realtime-database

我使用的版本是:

Firebase 版本 5.4.2 和 5.5.0 Unity版本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/

相关文章:

unity3d - unity material.color.a代码不起作用

c# - 即使应用程序处于后台,Time.unscaledDeltaTime 仍然在计数

java - Android应用程序需要双击才能登录

查询没有要获取的数据时的 FirebaseAnimatedList 查询

javascript - Firebase 在加载 View 之前未接收数据 - 在填充之前返回空数组

firebase.database() 日期未提交

c# - Unity3d 中的受控音高或频移

unity3d - 在 Monodevelop Unity 5.2 中看不到 javascript 文件

c# - Unity多人FPS客户端/服务器交互问题

ios - 使用 swift 3 在 Firebase 数据库上进行简单搜索