在应用未运行时收听 Firestore 的 onSnapshot 运行

listen to Firestore's onSnapshot while app is not running

我希望我的应用能够在后台收听 onSnapshot,我知道我可以为此使用 background task,但我不知道如何设置它.

顺便说一句,我正在尝试实现这一点,以便我的应用程序可以在应用程序处于后台时收到新文档时推送通知。

大多数移动操作系统都严格限制应用程序在后台执行的操作。保持与服务器的活动连接是 iOS 上从未允许的事情之一,并且在最近的 Android 版本中变得更加严格。

更好的方法是 运行 检测服务器上相关更改的代码,然后使用 Firebase 云消息传递(如果您只针对 iOS,则直接使用 APNS)发送给用户的通知。当他们点击该通知时,您的应用程序将启动,您可以从 Firestore 加载数据。

如果您不想 运行 您自己的服务器,Cloud Functions 是一个常见的替代方案,因为它内置了触发器来响应 Firestore 中的变化。有关此具体场景的示例,请参阅 notify users when something interesting happens.

上的文档