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

如何在不同的android架构视图模型之间缓存firebase数据?,firebase,firebase-realtime-database,Firebase,Firebase Realtime Database,这个问题是关于优秀系列: 如果我有同一视图模型的两个实例,或者如果两个视图模型从firebase调用相同的数据,我如何缓存它们,从而不会为相同的数据添加多个侦听器 附言-@Doug:该系列的第2部分到第3部分链接已断开 在同一数据上添加多个侦听器/观察者不会影响性能。Firebase SDK将进行优化,以便无论有多少监听器在等待数据,都只通过网络传输数据的一个副本。一旦检索到,数据就被简单地发送到每个侦听器/观察者。同样,如果启用了持久性,则磁盘上只有一个本地缓存供所有侦听器使用 您不应该试图以

这个问题是关于优秀系列:

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


附言-@Doug:该系列的第2部分到第3部分链接已断开

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

您不应该试图以任何方式优化代码,而应该尽量减少侦听器获得的数据量。数据中的任何重叠都将自动管理