设备重启后更快获得推送通知

问题描述

我在我的 android 和 iOS 应用程序上使用 firebase 推送通知,一切正常。如果我重新启动设备,推送通知确实会出现,但会在一段时间后(大约 1 - 2 分钟)。另一方面,WhatsApp 几乎可以立即发出推送通知。我想知道如何获得这种性能。我在 android 上读到过,我可以在启动时启动后台服务,但这有什么用?

Android push notifications after device reboot

从启动开始,我唯一能想到在后台服务中做的事情就是再次订阅推送通知,但我怀疑这会加快获取它们的过程吗?

解决方法

它需要消息队列来处理。但它需要服务器来做大部分事情。

由于 WhatsApp 是一款聊天应用,它会一直产生大量消息。

因此,我们可以使用消息队列在客户端和服务器之间临时存储消息,以解决网络错误或设备离线(与电话关机相同)。

只要设备在线,消息队列就会向移动设备发送消息。

您可以看看 RabbitMQ,它是部署最广泛的开源消息代理。 Google 有很多关于使用它的好讨论,你可以搜索查看。