2016-05-30 98 views
0

我正在嘗試使用smack 4.1.4與xfire開放式服務器,我可以連接到服務器一段時間。然後在某個時候我得到錯誤。這是我的java類。在android中的XMPP連接錯誤

public void init(String userId,String pwd) { 
     Log.i("XMPP", "Initializing!"); 
     this.userName = userId; 
     this.passWord = pwd; 
     XMPPTCPConnectionConfiguration.Builder configBuilder = XMPPTCPConnectionConfiguration.builder(); 
     configBuilder.setUsernameAndPassword(userName, passWord); 
     configBuilder.setSecurityMode(ConnectionConfiguration.SecurityMode.disabled); 

     configBuilder.setServiceName(DOMAIN); 
     configBuilder.setHost(HOST); 
     configBuilder.setPort(PORT); 
     //configBuilder.setDebuggerEnabled(true); 
     connection = new XMPPTCPConnection(configBuilder.build()); 
     connection.addConnectionListener(connectionListener); 

    } 

    // Disconnect Function 
    public void disconnectConnection(){ 

     new Thread(new Runnable() { 
      @Override 
      public void run() { 
       connection.disconnect(); 
      } 
     }).start(); 
    } 

    public void connectConnection() 
    { 
     AsyncTask<Void, Void, Boolean> connectionThread = new AsyncTask<Void, Void, Boolean>() { 

      @Override 
      protected Boolean doInBackground(Void... arg0) { 

       // Create a connection 
       try { 
        connection.connect(); 
//     login(); 
        connected = true; 

       } catch (IOException e) { 
       } catch (SmackException e) { 

       } catch (XMPPException e) { 
            } 

       return null; 
      } 
     }; 
     connectionThread.execute(); 
    } 
public void login() { 

     try { 
      connection.login(userName, passWord); 
      //Log.i("LOGIN", "Yey! We're connected to the Xmpp server!"); 

     } catch (XMPPException | SmackException | IOException e) { 
      e.printStackTrace(); 
     } catch (Exception e) { 
     } 

    } 

以下是錯誤我得到

05-30 17:07:13.675 892-1180/com.demoapp.messenger W/AbstractXMPPConnection: org.jivesoftware.smack.XMPPException$StreamErrorException: internal-server-error You can read more about the meaning of this stream error at http://xmpp.org/rfcs/rfc6120.html#streams-error-conditions 
05-30 17:07:13.675 892-1180/com.demoapp.messenger W/AbstractXMPPConnection: <stream:error><internal-server-error xmlns='urn:ietf:params:xml:ns:xmpp-streams'/></stream:error> 
05-30 17:07:13.675 892-1180/com.demoapp.messenger W/AbstractXMPPConnection:  at org.jivesoftware.smack.tcp.XMPPTCPConnection$PacketReader.parsePackets(XMPPTCPConnection.java:1003) 
05-30 17:07:13.675 892-1180/com.demoapp.messenger W/AbstractXMPPConnection:  at org.jivesoftware.smack.tcp.XMPPTCPConnection$PacketReader.access$300(XMPPTCPConnection.java:944) 
05-30 17:07:13.675 892-1180/com.demoapp.messenger W/AbstractXMPPConnection:  at org.jivesoftware.smack.tcp.XMPPTCPConnection$PacketReader$1.run(XMPPTCPConnection.java:959) 
05-30 17:07:13.675 892-1180/com.demoapp.messenger W/AbstractXMPPConnection:  at java.lang.Thread.run(Thread.java:856) 
05-30 17:07:13.675 892-1180/com.demoapp.messenger D/xmpp: ConnectionClosedOn Error! 

任何幫助對此可以理解

+0

那麼,錯誤日誌清楚地表明,服務器在5秒內未能響應,請檢查服務器是否由於某種原因而下線。鑑於您提供的描述,很難找出實際問題。 – Egor

+0

@ Egor-error log is change.I出現此錯誤 –

+0

'internal-server-error您可以在http://xmpp.org/rfcs/rfc6120.html#streams-error中閱讀關於此流錯誤含義的更多信息'條件' – Flow

回答

1
  • 你需要更新你的JRE到版本8
  • 如果你使用一個基於Linux的系統嘗試使用oracle jre 8 for openfire