如何知道Firebase DataSnapshot何时在服务器端持久化



我正在使用Firebase,使用离线功能构建聊天(keepSynced(true)(

它运行良好,除了我找不到一种方法来知道 DataSnapshot 消息是否确实已保存在服务器端,就好像我查询消息 Firebase 会告诉我它存在一样(它在本地存在!

我发现了有关交易的信息,但它无法离线保存。

我还发现了有关检查Firebase的连接状态的信息,但它是一个全局状态,并没有反映一个接一个的快照状态。

我发现的唯一解决方案是在我反对的消息上添加一个"持久化"的属性,此属性由服务器端函数设置,但为此目的这似乎有些过分。我很确定Firebase确实在本地知道哪些值尚未持久化?

在 Android 上,当您执行任何写入操作时,您将得到一个 Task 对象作为返回,或者您可以指定一个 CompletionListener 作为参数。 其中任何一个都将指示服务器何时接收数据。 如果您不使用这些,则没有其他指示。

使用云函数在写入时标记位置肯定是另一种方法,如果您无法保留任务或完成侦听器。

相关内容

  • 没有找到相关文章

最新更新