Android XMPPTCPConnection:机器不在网络上

时间:2019-06-01 13:23:46

标签: android xmpp socketexception

在Wifi上时,即使手机确实具有网络连接,我们Android应用程序中的XMPPTCPConnection有时也会抛出“ SocketException:计算机不在网络上”。当用户关闭Wifi并再次打开时,该应用程序即可立即连接。 发生此异常时,XMPPTCPConnection对象将断开连接,并设置为NULL并在尝试重新连接之前重新创建。但这没有帮助。下面是代码段。

  try {
      if (null != connection)
      connection.disconnect();
  } catch (Exception e) {
  }

  connection = null;
  XMPPTCPConnectionConfiguration connConfig = createConfiguration();
  if (null != connConfig)
  {
      connection = new XMPPTCPConnection(connConfig);
      try {
          connection.connect();
      } catch (StackOverflowError e) {
          e.printStackTrace();
      } catch (XMPPException e) {
          e.printStackTrace();
      } catch (Exception e) {
          e.printStackTrace();
      }
  }

请让我知道如何解决此问题。感谢您的帮助。

这是堆栈跟踪。

org.jivesoftware.smack.SmackException $ ConnectionException:以下地址失败:'.com:5223'失败,因为java.net.SocketException:计算机不在网络上     在org.jivesoftware.smack.tcp.XMPPTCPConnection.connectUsingConfiguration(XMPPTCPConnection.java:596)     在org.jivesoftware.smack.tcp.XMPPTCPConnection.connectInternal(XMPPTCPConnection.java:830)     在org.jivesoftware.smack.AbstractXMPPConnection.connect(AbstractXMPPConnection.java:360)     在com.sarkms.cclib.XMPPConnLib.connectToChatServer(XMPPConnLib.java:184)     在com.sarkms.cclib.XMPPConnHelper.connectToChatServer(XMPPConnHelper.java:331)     在com.sarkms.cclib.XMPPConnHelper.LoginToChatServer(XMPPConnHelper.java:383)     在com.sarkms.cclib.ConnChkRun.runConnectionCheck(ConnChkRun.java:83)     在com.sarkms.cclib.ops.Connection.runConnection(Connection.java:142)     在com.sarkms.cclib.MessageService $ 1.run(MessageService.java:39)

0 个答案:

没有答案