Firebase侦听器(例如childEventListener)是否会下载所有数据而不考虑ui?

时间:2019-05-05 00:47:43

标签: android firebase firebase-realtime-database android-recyclerview

我正在构建一个基于照片的应用程序,我正在使用childEventListener从数据库中检索照片,然后将添加的每个孩子添加到我的回收站适配器中。

我想了解的是,无论用户浏览了多少项目,侦听器都会下载所有数据吗?

例如:在我的数据库中,有500,000个用户帖子。我有一个childEventistener,可以将每个孩子添加到回收站的适配器中。 在屏幕上,只有2张照片可以容纳,并且用户在离开应用程序之前已经滚动了20张照片。

是否已将全部500,00下载的数据发送到他们的手机?我想知道如何在我的代码中做到最高效,这样就不会无故浪费用户的数据。

1 个答案:

答案 0 :(得分:2)

如果将侦听器添加到数据库中的某个节点,它将下载该节点下的所有子代及其所有子代,依此类推。

如果这不是您想要的,则应使用可限制子代数并指定所需子代偏移量的方法来分页结果。 Read the documentation for that