smack ライブラリ v4.1.5 (Android) と openfire v4.0.1 の XMPP 再接続プロセスに関する非常に大きな問題 (おそらく私のもの?) を発見しました。この方法で、クライアントでストリーム管理を有効にしました。
XMPPTCPConnection.setUseStreamManagementDefault(true);
XMPPTCPConnection.setUseStreamManagementResumptionDefault(true);
この方法で自動再接続を有効にしました。
ReconnectionManager.getInstanceFor(this.xmppConnection).enableAutomaticReconnection();
最初の接続とログインに成功した後、インターネット接続がダウンして再接続プロセスが開始されると、次のエラーが表示されます。
W/AbstractXMPPConnection: Connection closed with error
org.jivesoftware.smack.XMPPException$StreamErrorException: conflict You can read more about the meaning of this stream error at http://xmpp.org/rfcs/rfc6120.html#streams-error-conditions
<stream:error><conflict xmlns='urn:ietf:params:xml:ns:xmpp-streams'/></stream:error>
at org.jivesoftware.smack.tcp.XMPPTCPConnection$PacketReader.parsePackets(XMPPTCPConnection.java:1003)
at org.jivesoftware.smack.tcp.XMPPTCPConnection$PacketReader.access$300(XMPPTCPConnection.java:944)
at org.jivesoftware.smack.tcp.XMPPTCPConnection$PacketReader$1.run(XMPPTCPConnection.java:959)
再接続マネージャーは非常にうまく接続して認証しますが、前のエラーが表示されます! リソースも変更しようとしましたが、何も機能しません! 誰かが何が間違っているのかを理解するのを手伝ってくれますか?