Smack Connection для сбоя сервера

Я успешно настроил сервер ejabberd на свой Macbook и протестировал его с помощью 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:

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

person user812954    schedule 17.12.2011    source источник
comment
Вы решили эту проблему. Я сталкиваюсь с тем же.   -  person WannaBeGeek    schedule 26.11.2014


Ответы (1)


Имена под .local разрешаются с помощью многоадресного DNS, и не все программы могут с этим справиться. При локальном тестировании вы можете добавить запись для него в ваш /etc/hosts файл.

person Zash    schedule 18.12.2011