在安卓设备上无法连接到XMPP服务器

3

我正在使用Samck 4.1.0-alpha库创建Xmpp客户端。已经创建了有效的用户。我试图通过代码发送消息,但是遇到了错误。

代码:

new Runnable(){

            @Override
            public void run() {
                // TODO Auto-generated method stub
                ConnectionConfiguration config = new ConnectionConfiguration("jabb3r.org", 5222, "jabb3r.org");
                XMPPConnection connection = new XMPPTCPConnection(config);
                try {
                    connection.connect();
                    connection.login("USERNAME", "PASSWORD");
                    // Assume we've created a XMPPConnection name "connection"._
                    ChatManager chatmanager = ChatManager.getInstanceFor(connection);
                    Chat newChat = chatmanager.createChat("neilneil@jabb3r.org", new MessageListener() {
                        public void processMessage(Chat chat, Message message) {
                            System.out.println("Received message: " + message);
                        }
                    });

                    try {
                        newChat.sendMessage("Howdy!");
                    }
                    catch (XMPPException e) {
                        System.out.println("Error Delivering block");
                    }
//                  ConnectionException.getFailedAddresses();
                } catch (SmackException | IOException | XMPPException e) {
                    // TODO Auto-generated catch block
                    e.printStackTrace();
                }
            }

        };

我遇到了一个奇怪的错误。 日志信息:
11-06 06:55:47.913: E/AndroidRuntime(1604): FATAL EXCEPTION: Thread-115
11-06 06:55:47.913:E/AndroidRuntime(1604):java.lang.NoClassDefFoundError:org.xbill.DNS.ResolverConfig
11-06 06:55:47.913: E/AndroidRuntime(1604):     at org.jivesoftware.smack.SmackAndroid$1$1.run(SmackAndroid.java:41)

我找不到任何可以调试此错误的资源。

您向项目中添加了 Smack 库。 - Naveen Tamrakar
1个回答

6

1
哦,这有点尴尬! - NeiL
3
这份说明文档是为aSmack准备的。对于在Android上使用的Smack 4.1,我实际上建议使用minidns而不是dnsjava。 - Flow

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接