Android上使用SMACK v4.0.6的XMPP客户端

时间:2015-02-11 23:36:48

标签: android xmpp openfire smack asmack

我是使用SMACK v4.0.6实现XMPP和使用Android XMPP客户端的新手。我正在尝试使用以下代码连接到在我的本地Linux机器上运行的SMACK服务器

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

我无法连接到服务器,我只得到一个ConnectionException。客户端和服务器都连接到同一本地网络,Android应用程序具有与Internet连接的权限。服务器正在运行默认配置。你能告诉我我错过了什么吗?

由于

1 个答案:

答案 0 :(得分:0)

将smack更新为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();
    }