0

我在我的 Macbook 上成功设置了一个ejabberd服务器,并使用 iChat 和 Adium 对其进行了测试。我正在尝试设置 Jabberd/XMPP 客户端以在 Android 操作系统上工作。connection.connect()以下代码在该方法上引发异常:

public void login(String username, String password) throws XMPPException {
    ConnectionConfiguration config = new ConnectionConfiguration("my-ejabberd-server-macbook.local", 5222);
    connection = new XMPPConnection(config);

    XMPPConnection.DEBUG_ENABLED = true;
    SASLAuthentication.supportSASLMechanism("PLAIN", 0);
    connection.connect();
    connection.login(username, password);
}

connection.connect()在方法调用上创建了以下异常:

XMPPError connecting to my-ejabberd-server-macbook.local:5222.: remote-server-error(502) XMPPError connecting to my-ejabberd-server-macbook.local:5222.
  -- caused by: java.net.SocketException: Host is unresolved: my-ejabberd-server-macbook.local

我在 Android Manifest 中只有以下权限:

<uses-permission android:name="android.permission.INTERNET" />
4

1 回答 1

1

下面的名称.local多播 DNS 解析,并非所有软件都可以处理。在本地测试时,您可以为其添加一个条目到您的/etc/hosts文件中。

于 2011-12-18T15:58:20.290 回答