【发布时间】:2015-02-04 20:01:09
【问题描述】:
我们正在开发一个移动应用程序(目前是 Android 和 iOS),我们使用 Firebase 进行聊天和其他实时消息。
我们使用的结构是:
firebase-url/user-id/
contacts/child-element
activities/
joined/child-element
created/child-element
notifications/child-element
为了使我的应用数据保持更新,我执行了一个查询并将一个子侦听器附加到用户 ID 分支(联系人、已加入、已创建、通知)的每个第一级子级(或在活动的情况下为第二级)。功能方面,它运行良好,可以轻松保持一切最新,但今天进行了一个小时的用户测试,电池消耗非常大(对于一个用户来说,该应用使用了大约 26% 的电池,第二大使用量)并且总是GC 收集器经常运行,我的感觉是 firebase 连接可能是最大的用户。它是否正确?仅在 user-id 分支上有一个子侦听器会更好吗?
任何帮助将不胜感激。如果需要,我会发布一些 Android 代码。
PS:这是应用的 Android 版本。
【问题讨论】:
-
我无法回答这个问题,因为我真的不确定。但根据我的研究,Firebase 监听器相对便宜。我会考虑将
ChildEventListener放在user-id参考上并从那里测试您的使用情况。我想知道您对此有何发现,因为我目前正在开发一个主要由 firebase 驱动的应用程序。
标签: android firebase firebase-realtime-database