Android Smack 4.1没有调用连接侦听器

时间:2015-11-13 10:45:43

标签: android xmpp listener smack

在我的聊天应用程序中,我一直在使用Smack 4.1库进行Xmpp通信。现在消息发送和接收正常,但我想在连接验证或连接成功时向用户显示一条消息。我一直在使用AbstractXMPPConnection对象进行连接。并添加了连接侦听器,

xmppConnection.addConnectionListener(this); 

但是只有在关闭连接时才会调用callClosed回调方法。其他方法如连接,验证等都没有调用。我已经读过,我们必须将callConnectionAuthenticatedListener添加到AbstractXMPPConnection对象中。但是不知道如何添加这个...是否有可能在AbstractXMPPConnection中获取这些回调方法。

1 个答案:

答案 0 :(得分:2)

我找到了解决方案......

连接侦听器未被调用的原因是我在建立连接后已将连接侦听器设置为xmpp连接对象。那是我之前的代码,

mXmppConnection.connect();
mXmppConnection.login();
mXmppConnection.addConnectionListener(this);

我已将此代码替换为:

mXmppConnection.addConnectionListener(this);
mXmppConnection.connect();
mXmppConnection.login();

所有的回调都被解雇了...... !!!