Firebase:即使应用退出,也要收听ChildEventListener
我正在开发一个iOS应用程序,并希望使用Firebase实时数据库来实现推送通知等行为。
如果我的应用程序正在监听一些firebase节点,并且我将在节点更新的情况下向用户发送本地推送通知。
问题是,如果应用程序没有运行,即用户已经杀死了它,我的应用程序将继续收听该特定节点? 我想,在Android中,我们已经支持这个,就像这个链接( 链接 )所解释的那样。
我们可以在iOS中实现相同的行为吗? 如果不是,可以select什么?
谢谢
更新 :
1-在iOS应用程序中没有像在本地触发推送通知一样。 我想实现远程通知的行为,这是不能做到的。
2-就听某些事件而言,当应用程序不在前台或后台时,不能完成。
如果一个iOS应用程序在内存中死亡/不存在,您将无法执行任何操作。
但是,如果应用程序在后台,并且存在于内存中,则可以执行一些任务。 在这种情况下,您可以使用后台获取请求 。
在Android中,即使在应用程序被终止的情况下,也可以运行Services
。 但在iOS上,没有这样的事情。
您可以将Firebase
观察器添加到您的根视图控制器中,并在应用处于后台时实施background fetch request
以继续观察数据。
当你的应用程序被杀害,监听器被断开。
在此状态下向您的应用发送消息的典型方法是使用推送通知,在Firebase中将其映射到Firebase云消息传递 。
这就是为什么您经常会看到Firebase数据库和Firebase云消息传递(FCM)一起使用的原因:数据库用于在用户打开应用程序时进行的消息传递,并且在应用程序处于启用状态时使用FCM发送消息不活跃。