2015-02-11 6 views
0

Я новичок в реализации XMPP и работает на клиенте Android XMPP, используя SMACK v4.0.6. Я пытаюсь подключиться к SMACK сервер, работающий на моей локальной машине Linux, используя следующий кодКлиент XMPP на Android с помощью SMACK v4.0.6

`ConnectionConfiguration connConfig = new ConnectionConfiguration(localServerIP, 5222); 
XMPPConnection connection = new XMPPConnection(connConfig); 
try{ 
    connection.connect(); 
}catch(Exception e)`. 

Я не могу подключиться к серверу, и я только получить ConnectionException. И клиент, и сервер подключены к одной локальной сети, и у приложения Android есть разрешение на подключение к Интернету. Сервер работает по умолчанию. Не могли бы вы рассказать, что мне не хватает?

СООБЩЕНИЕ

+0

возможно дубликат [ConnectionException при попытке подключиться к серверу XMPP от клиента aSmack Android] (http://stackoverflow.com/questions/25998575/connectionexception-when-trying-to-connect-to-xmpp- сервера из-asmack-андроид-Сl) – Flow

ответ

0

Обновление для 4.1. В вашем Gradle, добавьте

compile 'org.igniterealtime.smack:smack-android:4.1.0' 
compile 'org.igniterealtime.smack:smack-tcp:4.1.0' 
compile 'org.igniterealtime.smack:smack-android-extensions:4.1.0' 

Пожалуйста, попробуйте это.

XMPPTCPConnectionConfiguration.Builder configBuilder = XMPPTCPConnectionConfiguration.builder(); 
    configBuilder.setHost(url); 
    configBuilder.setPort(port); 
    configBuilder.setServiceName("your service name"); 
    configBuilder.setSendPresence(true); 

    try{ 
       connection = new XMPPTCPConnection(configBuilder.build()); 
       // Connect to the server 
       connection.connect(); 
    }catch (XMPPException | SmackException | IOException e) { 
       e.printStackTrace(); 
    }