10

を指定するのclienIDは class のみの機能であるため、classおよびMqttAndroidClientを使用する場合は指定できません。IMqttClientIMqttAsynchClient

クライアントを一意に接続する本当の目的は何IDですか?

4

1 に答える 1

13

すべての MQTT 接続には一意のクライアント ID が必要です。この一意のクライアント ID を使用して、ブローカーはクライアントが再接続したことを認識し、半分開いている可能性がある古いクライアントの TCP 接続を閉じることができます。また、MQTT ブローカーは、必要に応じて MQTT クライアントの永続セッションを保持できます ( CONNECT でcleanSession=falseを指定)。切断して同じクライアント ID で再接続すると、見逃した可能性のあるサブスクリプションのすべてのメッセージを受信し、ブローカーはそのクライアント ID の古いサブスクリプションを認識します。

于 2014-11-27T17:29:53.257 に答える