如何在不同的android架构视图模型之间缓存firebase数据?

时间:2018-03-04 02:18:40

标签: firebase firebase-realtime-database

这个问题是参考优秀系列:Using Android Architecture Components with Firebase Realtime Database

如果我有两个相同视图模型的实例,或者如果两个视图模型从firebase调用相同的数据,我如何缓存它们以便我不会为同一数据添加多个侦听器?

P.S。 - @Doug:该系列的第2部分到第3部分链接已断开。

1 个答案:

答案 0 :(得分:1)

在同一数据上添加多个侦听器/观察器没有性能损失。 Firebase SDK将进行优化,无论有多少听众等待,都只能通过网络传输一份数据副本。一旦检索,数据就会被简单地发送给每个监听器/观察者。同样,如果启用了持久性,则磁盘上只有一个本地缓存,所有侦听器都将使用它。

除了最小化侦听器获取的数据量之外,您不应该尝试以任何方式优化代码。数据的任何重叠都会自动管理。