Firebase:即使应用程序退出,也要监听ChildEventListener

时间:2017-01-09 13:14:19

标签: ios firebase push-notification firebase-realtime-database

我正在开发 iOS 应用程序,并希望使用firebase实时数据库实现推送通知等行为。

如果我的应用正在侦听某个firebase节点,并且我会在节点更新的情况下向用户发送本地推送通知。

问题是,如果应用程序未运行,即用户已将其杀死,我的应用程序是否会继续侦听该特定节点? 我想,在Android中我们支持这样,如此链接(Link)中所述。

我们可以在iOS中实现相同的行为吗?如果不是,可以选择什么?

由于

更新

1-在iOS应用程序中本地触发推送通知没什么。我想实现远程通知的行为而且无法完成。

2-就收听某些事件而言,当app不在前台或后台时,无法完成。

2 个答案:

答案 0 :(得分:4)

如果iOS应用程序在内存中被杀死/不存在,则无法执行任何操作。

但是,如果app在后台,并且存在于内存中,则可以执行某些任务。 在这种情况下,您可以使用background fetch request

在Android中,即使应用程序被杀,也会运行Services。但是在iOS上,没有这样的东西。

您可以在根视图控制器中添加Firebase个观察者,并实现background fetch request以在应用处于后台时继续观察数据。

答案 1 :(得分:3)

当你的应用程序被杀死时,监听器将被断开连接。

在此状态下向您的应用发送消息的典型方法是使用推送通知,该通知在Firebase中映射到Firebase Cloud Messaging

这就是为什么您经常会看到Firebase数据库和Firebase云消息传递(FCM)一起使用的原因:数据库用于在用户打开应用程序时发送消息,而FCM用于在发送消息时发送消息该应用未激活。