1

私は Android 4.3 で paho を使用しており、ホストされている Eclipse Mosquitto サーバーと通信していますm2m.eclipse.org。クライアントをサービスにラップし、 を使用しAlarmManagerてキープアライブ メッセージをサーバーに送信しています。サービスがリッスンしているトピックにメッセージを送信する別のクライアント (mqtt httbridge を使用するか、paho を使用する別の Android デバイス) があります。

すべてがスムーズに動作します...動作しなくなるまで。ある時点で、Android サービスがメッセージの受信を停止します。キープアライブは送信を続けます。すべて問題ないように見えますが、メッセージが届きません。mosquitto のローカル インスタンスでこの動作を複製することはできませんでした。これは、Eclipse 側の何らかの構成であると思わせますが、任意のポインターを適用します。

QoS は 0 です。

4

1 に答える 1

0

QoS 1 または 2 を使用してみましたか?

MQTT 仕様からQoS 0 はAt most once :メッセージは最大 1 回配信されるか、まったく配信されない可能性があります。ネットワーク経由での配信は確認されません。メッセージは保存されません。クライアントが切断された場合、またはサーバーに障害が発生した場合、メッセージが失われる可能性があります。QoS0 は最速の転送モードです。「ファイア アンド フォーゲット」と呼ばれることもあります。

于 2014-04-29T07:11:22.623 に答える