Firebase:监听多个用户节点

Firebase: Listening to multiple user nodes

我正在使用 Firebase 和 Geofire 开发应用程序。在当前位置的 运行 地理查询中,假设我在 OnKeyEntered 覆盖方法中收到 10 个键。这些键中的每一个本质上都是 Firebase 中的一个用户节点。我需要听取查询区域中每个用户的任何数据更改,以便我可以在地图上实时显示更新。

目前,我正在为输入的每个键添加一个 ValueEventListener,但我不确定同时启动这么多侦听器是否是个好主意。查询区域的用户可能超过 50 个。这意味着我可以有 50 个开放的侦听器!

有更好的方法吗?我试图找出一个 firebase 查询来仅过滤地理查询键,但没有成功。

任何帮助都会很棒!

侦听器在计算上并不昂贵,除非你有一个将被非常频繁触发的侦听器,因为它正在侦听的数据经常变化。

在实际观察到需要优化代码之前,不要陷入优化代码的陷阱。当您看到性能不佳时,就是进行优化的时候了。如果你需要一群听众来完成你的工作,那就去做吧。只要知道你的实际上限是多少,一定要测试这个上限是否有问题。