Xmpp 加入会议时无响应,无响应异常

Xmpp 加入会议时无响应,无响应异常,xmpp,chat,smack,asmack,Xmpp,Chat,Smack,Asmack,我在参加会议聊天时遇到以下异常 例外情况: org.jivesoftware.smack.SmackException$NoResponseException:无响应 在回复超时内收到。超时时间为10000ms(~10s)。等待 使用:AndFilter:(节类型Filter:Presence,或Filter: (和过滤器:(来自MatchesFilter(ignoreResourcepart): hdhd@conference.35.171.18.126,MUCUserStatusCodeFi

我在参加会议聊天时遇到以下异常

例外情况:

org.jivesoftware.smack.SmackException$NoResponseException:无响应 在回复超时内收到。超时时间为10000ms(~10s)。等待 使用:AndFilter:(节类型Filter:Presence,或Filter: (和过滤器:(来自MatchesFilter(ignoreResourcepart): hdhd@conference.35.171.18.126,MUCUserStatusCodeFilter:status=110), AndFilter:(来自MatchesFilter(完整): hdhd@conference.35.171.18.126/user00000003,节过滤器: id=c3v5j-70,PresenceTypeFilter:type=error)))。07-02 12:39:58.019 31567-31567/com.br.granplay W/System.err:at org.jivesoftware.smack.StanzaCollector.nextResultOrThrow(StanzaCollector.java:260)

代码:

通常,当用户的状态未更新到Openfire服务器并尝试加入房间时,会出现此异常

因此,在onStop()和close应用程序上更新您的状态(不可用)。 并在Resume()上设置您的状态(可用)


尽管如此,您仍然会收到此异常,然后在异常时将用户的状态“不可用”发送到Openfire服务器,并在1-2秒后发送状态“可用”,然后加入组。

在修复之前,我正在为xmpp连接使用下面的配置

 XMPPTCPConnectionConfiguration conf = XMPPTCPConnectionConfiguration.builder()
                .setXmppDomain(mServiceName)
                .setHostAddress(getIpAddressOrNull(mServiceName))
                .setResource("Android")
                .setUsernameAndPassword(mUsername, mPassword) 
                .setKeystoreType(null) //This line seems to get rid of the problem
                .setSecurityMode(ConnectionConfiguration.SecurityMode.disabled)
                .setCompressionEnabled(true)
                .setSendPresence(true)
                .setDebuggerEnabled(false)
                .build();
删除资源部件后修复的问题

.setResource("Android")
 XMPPTCPConnectionConfiguration conf = XMPPTCPConnectionConfiguration.builder()
                .setXmppDomain(mServiceName)
                .setHostAddress(getIpAddressOrNull(mServiceName))
                .setResource("Android")
                .setUsernameAndPassword(mUsername, mPassword) 
                .setKeystoreType(null) //This line seems to get rid of the problem
                .setSecurityMode(ConnectionConfiguration.SecurityMode.disabled)
                .setCompressionEnabled(true)
                .setSendPresence(true)
                .setDebuggerEnabled(false)
                .build();
.setResource("Android")