如何与Smack客户端Android建立Ejabberd连接?

时间:2016-04-02 07:20:12

标签: android ejabberd smack

SMACKException:以下地址失败:' localhost:5222'失败,因为java.net.ConnectException:30000ms后无法连接到localhost / 127.0.0.1(端口5222):isConnected失败:ECONNREFUSED(拒绝连接)

   XMPPTCPConnectionConfiguration.Builder config =     
   XMPPTCPConnectionConfiguration
            .builder();
    config.setSecurityMode(ConnectionConfiguration.SecurityMode.disabled);
    config.setServiceName("localhost");
    config.setHost("localhost");
    config.setPort(5222);
    config.setDebuggerEnabled(true);
    XMPPTCPConnection.setUseStreamManagementResumptiodDefault(true);
    XMPPTCPConnection.setUseStreamManagementDefault(true);
    connection = new XMPPTCPConnection(config.build());
    XMPPConnectionListener connectionListener = new     
    XMPPConnectionListener();
    connection.addConnectionListener(connectionListener);

请帮帮我吧。在此先感谢

1 个答案:

答案 0 :(得分:0)

由于您尚未指定从设备或模拟器连接到服务器,我猜您正在模拟器中使用您的应用程序。

如果您从Android模拟器中引用系统上的本地主机,则必须使用http://10.0.2.2:8080/因为Android模拟器在虚拟机内运行,因此127.0.0.1或localhost将是模拟器自带的环回地址。

参见:http://developer.android.com/tools/devices/emulator.html#emulatornetworking

请参阅此答案:java.net.ConnectException: localhost/127.0.0.1:8080 - Connection refused