应用程序未运行时的Firebase侦听器

时间:2018-05-14 12:22:54

标签: java android firebase firebase-realtime-database

是否有任何方法可以使我的Firebase侦听器处于活动状态,即使应用程序未运行?

我需要在运行时添加侦听器,而不使用服务。

请帮帮我。

2 个答案:

答案 0 :(得分:0)

在您的情况下,要实现此目的,只需不要删除侦听器。

但请记住,如果您不再需要时删除侦听器,它将继续接收在其侦听位置发生的更改。因此,每次添加侦听器而不删除它时,所有先前的侦听器都将仍然收到结果。我只能想象,重复这么多次将很快消耗具有移动数据连接的设备上的可用网络带宽,显然会导致缓慢。

根据您活动的生命周期,这是 how to remove the listener

答案 1 :(得分:0)

所有Firebase实例,无论它们是什么,都只是进程内部的内存实例,对于添加到它们的侦听器也是如此。

当您的应用程序的进程因任何原因被终止/停止时,所有这些侦听器和实例将被垃圾收集并且将不再存储在内存中,因此不会触发任何更新。

如果您删除了侦听器,则无关紧要,如果托管所有这些的进程已经消失。

即使您的应用未运行,如果您希望在后台生活。您应该考虑使用Service

或者更好地解释您的用例会更容易为您提供帮助。

没有多少或任何用例需要一直实时更新,每天每小时一次。