Hi there,
I have a simple Android demo app where I enabled Stream Management
connection.setUseStreamManagement(true);
and also handle WiFi reconnection events via ConnectionListener
I noticed one strange thing when I switch OFF and then ON WiFi on my Android phone.
My app is reconnecting back to the server and in logs I see the following
12-02 15:05:41.411 31469-6611/com.igor.smackdemo D/SMACK: SENT (0): <stream:stream xmlns=‘jabber:client’ to=‘chat.quickblox.com’ xmlns:stream=‘http://etherx.jabber.org/streams’ version=‘1.0’ xml:lang=‘en’>
12-02 15:05:41.544 31469-6612/com.igor.smackdemo D/SMACK: RECV (0): <?xml version='1.0'?><stream:stream xmlns=‘jabber:client’ xmlns:stream=‘http://etherx.jabber.org/streams’ from=‘chat.quickblox.com’ id=‘ff35b34b-08dd-4a7c-9c18-adde7f014052’ version=‘1.0’ xml:lang=‘en’>
12-02 15:05:41.685 31469-6612/com.igor.smackdemo D/SMACK: RECV (0): stream:featuresPLAINANONYMOUSzlib</stream:features>
12-02 15:05:41.692 31469-6058/com.igor.smackdemo I/System.out: LOG > connected
12-02 15:05:41.692 31469-6058/com.igor.smackdemo D/SMACK: XMPPConnection connected (0)
12-02 15:05:41.692 31469-6611/com.igor.smackdemo D/SMACK: SENT (0): ADUxNzkyMTgtOTIAaWdvcnF1aWNrYmxveDcxMQ==
12-02 15:05:41.825 31469-6612/com.igor.smackdemo D/SMACK: RECV (0):
12-02 15:05:41.825 31469-6611/com.igor.smackdemo D/SMACK: SENT (0): <stream:stream xmlns=‘jabber:client’ to=‘chat.quickblox.com’ xmlns:stream=‘http://etherx.jabber.org/streams’ version=‘1.0’ id=‘ff35b34b-08dd-4a7c-9c18-adde7f014052’ xml:lang=‘en’>
12-02 15:05:41.966 31469-6612/com.igor.smackdemo D/SMACK: RECV (0): <?xml version='1.0'?><stream:stream xmlns=‘jabber:client’ xmlns:stream=‘http://etherx.jabber.org/streams’ from=‘chat.quickblox.com’ id=‘ff35b34b-08dd-4a7c-9c18-adde7f014052’ version=‘1.0’ xml:lang=‘en’>
12-02 15:05:42.138 31469-6612/com.igor.smackdemo D/SMACK: RECV (0): stream:featureszlib</stream:features>
12-02 15:05:42.138 31469-6611/com.igor.smackdemo D/SMACK: SENT (0): myresource
12-02 15:05:42.278 31469-6612/com.igor.smackdemo D/SMACK: RECV (0): 5179218-92@chat.quickblox.com/myresource
12-02 15:05:42.286 31469-6611/com.igor.smackdemo D/SMACK: SENT (0):
12-02 15:05:42.427 31469-6612/com.igor.smackdemo D/SMACK: RECV (0):
12-02 15:05:42.427 31469-6611/com.igor.smackdemo D/SMACK: SENT (0):
12-02 15:05:42.567 31469-6612/com.igor.smackdemo D/SMACK: RECV (0):
12-02 15:05:42.567 31469-6611/com.igor.smackdemo D/SMACK: SENT (0):
12-02 15:05:42.567 31469-6058/com.igor.smackdemo D/SMACK: User logged (0): 5179218-92@chat.quickblox.com:5222/myresource
12-02 15:05:42.567 31469-6058/com.igor.smackdemo I/System.out: LOG > authenticated
12-02 15:05:42.567 31469-6611/com.igor.smackdemo D/SMACK: SENT (0):
12-02 15:05:42.567 31469-6058/com.igor.smackdemo D/SMACK: XMPPConnection authenticated (0)
12-02 15:05:42.567 31469-6611/com.igor.smackdemo D/SMACK: SENT (0):
12-02 15:05:42.575 31469-6611/com.igor.smackdemo D/SMACK: SENT (0):
12-02 15:05:42.575 31469-6058/com.igor.smackdemo I/System.out: LOG > reconnectionSuccessful
12-02 15:05:42.575 31469-6058/com.igor.smackdemo D/SMACK: XMPPConnection reconnected (0)
12-02 15:05:42.575 31469-6611/com.igor.smackdemo D/SMACK: SENT (0): myresource
12-02 15:05:42.575 31469-6611/com.igor.smackdemo D/SMACK: SENT (0):
12-02 15:05:42.575 31469-6611/com.igor.smackdemo D/SMACK: SENT (0):
12-02 15:05:42.583 31469-6611/com.igor.smackdemo D/SMACK: SENT (0):
12-02 15:05:42.583 31469-6611/com.igor.smackdemo D/SMACK: SENT (0):
12-02 15:05:42.716 31469-6612/com.igor.smackdemo D/SMACK: RECV (0):
12-02 15:05:42.724 31469-6612/com.igor.smackdemo D/SMACK: RECV (0): 5179218-92@chat.quickblox.com/myresource<presence xmlns=“jabber:client” from="5179218-
12-02 15:05:42.724 31469-6611/com.igor.smackdemo D/SMACK: SENT (0):
12-02 15:05:42.731 31469-6611/com.igor.smackdemo D/SMACK: SENT (0):
12-02 15:05:42.731 31469-6611/com.igor.smackdemo D/SMACK: SENT (0):
12-02 15:05:42.739 31469-6611/com.igor.smackdemo D/SMACK: SENT (0):
12-02 15:05:42.739 31469-6611/com.igor.smackdemo D/SMACK: SENT (0):
12-02 15:05:42.755 31469-6611/com.igor.smackdemo D/SMACK: SENT (0):
12-02 15:05:42.864 31469-6612/com.igor.smackdemo D/SMACK: RECV (0): 92@chat.quickblox.com/myresource" to="5179218-92@chat.quickblox.com" id=“UCh61-30”>
12-02 15:05:42.864 31469-6611/com.igor.smackdemo D/SMACK: SENT (0):
So you can see that Smack sends some auth data twice
Here is my simple Android app to test this scenario
https://github.com/soulfly/smack-codesample/tree/master/android/SmackDemo/app/sr c/main/java/com/igor/smackdemo