这样的Firebase
听众会占用大堆内存吗?
ref.addListenerForSingleValueEvent(new com.google.firebase.database.ValueEventListener() {
@Override
public void onDataChange(com.google.firebase.database.DataSnapshot snapshot) {
}
});
至少在拍摄快照时?
答案 0 :(得分:1)
Firebase数据库客户端会保留您在应用内存中收听的所有数据的副本。删除某个位置的最后一个侦听器后,正如我们已经讨论过here,数据将从内存中删除。
当我们谈论Firebase时,一切都是关于听众的,并且作为对你的问题的快速回复,不,听众不会占用大量内存,你可以使用尽可能多的听众,如果正确删除它们。 / p>
使用addListenerForSingleValueEvent()表示:
为此位置的数据中的
single
更改添加侦听器。
因此无需删除侦听器。
如果您使用了ref.keepSynced(true)
,ref
位置的所有数据都将保留在内存中,并保持最新状态。
如果您enable persistence
,客户端还会将活动数据和最新数据保存到磁盘。