Mqtt 和推送通知

Mqtt and Push notifications

我为 ios 设备制作了一个应用程序,可以连接到 mqtt 代理并在应用程序处于前台或后台状态时发送和接收消息。

现在我想存档以接收消息,即使我从后台状态终止应用程序也是如此。

我相信pushy is a very good documented service so I was looking at this and its backend tutorial

对于我的经纪人,我使用 hivemq,我现在的问题是,我可以修改用于发送 pushy 消息的代码吗? 或者我可以使用其他更灵活的经纪人吗?

总而言之,我想知道如何设置我的代理来发送推送通知(hivemq 或其他更可定制的)

任何文档都会很棒

提前致谢。

iOS/Android 上的推送通知通常能够唤醒甚至从头开始启动目标应用。与 MQTT 相比,应用只有在启动 订阅代理时才能接收消息。推送通知是一种非常特殊且非常不同的消息。一个特定的推送通知服务使用 MQTT 进行传输这一事实并不意味着您可以这样做。好吧,除非你想自己编写这样全面的服务。您不能只使用 "more customizable MQTT broker" - MQTT 代理无法启动您的应用程序。

此外,Pushy 仅在 Android 上使用 MQTT,因为据报道在 Android 上可以伪造官方 GCM/FCM push backend - and it's apparently not easy because majority of services just piggybacks on GCM/FCM. On iOS, you are inescapably dependent on the official APNS,甚至 Pushy 也必须使用它 - 没有 MQTT 推送 iOS.

我终于知道它应该是什么了。

Hivemq 有一个 guide 用于使用 java 开发插件,所以我做到了,我实现了推送通知后端和 mysql 连接的客户端,当消息出现时我搜索以消息为主题的离线客户,只向他们发送推送!

感谢大家的帮助。