我正在使用MQTT-Client-Framework开发iOS应用程序.
该应用程序在首次启动时成功与服务器通信.
该应用程序在首次启动时成功与服务器通信.
但在我将其转为后台并返回前台后,我不再收到来自MQTT服务器的任何消息.
每次应用程序重新激活并变为活动状态时,我将使用新的Mqtt对象(不同的客户端ID)重新连接:
func applicationWillResignActive(_ application: UIApplication) { //Unsubscribe topic,disconnect the mqtt client,and close the client } func applicationDidBecomeActive(_ application: UIApplication) { //Renew mqtt client,set delegate,reconnect to server and subscribe topic }
但是,重新连接后,我不再收到来自服务器的任何消息.我检查了客户端状态,并且已连接.重新连接后如何让应用程序接收消息?
解决方法
通过将clean session标志更改为false来修复自己 不需要取消订阅该主题
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。