2017-01-27 20 views
3

MQTT-Client-Frameworkを使用してiOSアプリケーションを開発しています。 アプリは最初の起動時にサーバーと正常に通信します。iOS MQTTは再接続後にメッセージを受信しません。

私はバックグラウンドに戻してフォアグラウンドに戻った後、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 
} 

しかし、私はもはや、再接続した後、サーバーからすべてのメッセージが表示されます。私はクライアントの状態を確認し、それが接続されています。再接続後にアプリケーションにメッセージを受信させるにはどうすればよいですか?

答えて

1

クリーンセッションフラグをfalseに変更して自分自身を修正しました。 トピックを購読解除する必要はありません。

関連する問題