繁体   English   中英

如何使用cocoaMQTT在iOS中使订户脱机

[英]How to make a subscriber offline in iOS using cocoaMQTT

我正在使用swift在iOS上工作。 我在我的iOS应用中使用可可mqtt协议。 我还将Activemq用于消息代理。

目的

我已经订阅了ActiveMQ上的一个主题。 之后,当我取消订阅ActiveMQ上的主题时,我希望用户仍然是该主题的订阅者,但不接收消息。 它脱机。

我希望订户再次活跃时,他可以使用该主题中的待处理消息。

问题陈述

当我取消订阅该主题时,该用户不再是该主题的订阅者,并且在该主题上发送的所有消息都丢失了(我没有收到),这是我在取消订阅期间收到的。

解决此问题的一种方法是使用MQTT中内置的保留消息传递功能。 然后,即使您在上一个会话中已经收到它们,您也将收到有关每个主题的最新消息。

另一种解决方案是在发送的消息上使用QoS 1或2。 如果您的应用程序在cleanSession设置为false连接,并且消息以QoS 1或2发布,则您将收到与代理断开连接时发送的消息。

在此处了解有关MQTT QoS的更多信息。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM