Firebase getChildrenCount()正在计算已删除的数据

时间:2016-07-03 13:01:50

标签: android firebase firebase-realtime-database

我有一个父节点“posts”,我需要获得这个父节点下的子节点数。

  1. 我删除了整个“帖子”节点本身。
  2. 重新创建“帖子”,里面有1个孩子。
  3. 使用来自databaseRef.children(“posts”)的快照的.getChildrenCount()
  4. .getChildrenCount()返回12(此时假设为1)
  5. 重复步骤1 - 4.这次.getChildrenCount()返回13。
  6. 上述试验显示,已删除的儿童仍在影响计数。也许Firebase中有一个内部计数器,在删除子项时不会重置。

    之前有人遇到过这个问题吗?如何解决?

1 个答案:

答案 0 :(得分:1)

我找到了解决方案。 可能有一些缓存在客户端导致此问题(在我的情况下,Android作为客户端)。 从手机中删除应用程序并安装后再次运行后,孩子数量恢复正常。

希望来自Firebase的人可以解释这种行为,也许告诉我们如何处理这个问题。无论如何要清除缓存?如果您已经在制作并且要求用户重新安装应用程序,那么这可能是一个真正的痛苦。