1

我在远程服务器上安装了 openfire。我可以使用 Spark XMPP 客户端连接到它。但是当我使用我的 Android XMPP 客户端时出现连接错误。以下是 Android 客户端应用程序的连接代码部分:

// Create a connection
    String serverIp = "14.63.XXX.XXX";
    ConnectionConfiguration connConfig =
            new ConnectionConfiguration(serverIp, 5222);
    connConfig.setSASLAuthenticationEnabled(true);
    XMPPConnection connection = new XMPPConnection(connConfig);


    try {
        connection.connect();
        Log.i("XMPPClient", "Connected to " + connection.getHost());
    } catch (XMPPException ex) {
        Log.e("XMPPClient", "Failed to connect to " + connection.getHost());
        Log.e("XMPPClient", ex.toString());
        xmppClient.setConnection(null);
    }
    try {
        connection.login(username, password);
         .......

connection.connect(); 时出现错误 被执行。我检查了服务器上的端口并打开了它。我也试过5223端口。我还检查了 XMPP 客户端的权限。我用谷歌搜索并找不到解决此问题的解决方案。有人可以建议我该怎么做吗?

4

1 回答 1

2

找到临时解决方案:)..我将代码的连接部分放在 AsyncTask (http://developer.android.com/reference/android/os/AsyncTask.html)中。现在它工作正常,但我也做了其他事情,我使用了网络上另一个已经在工作的项目中的 smack API 库。所以我仍在寻找适用于我的项目的 smack api。我看过http://asmack.org .. 但对我没用!!

于 2013-08-28T15:19:35.987 回答