我在我的项目中使用qxmpp库。我尝试编写简单的应用程序,以确定它是否连接到服务器。它很好地连接在Windows上。然后我尝试在Android上测试它,但它没有连接,我不知道为什么,因为它没有显示错误。
该应用在Android上正常运行,但似乎没有任何关于XMPP协议的信息。没有连接和记录。我只是在debug()
进入了这一行:
D/libc-netbsd( 465): getaddrinfo: gmail.com get result from proxy >>
这是我的第一次尝试:
lbl.setText("is not Connected");
client.connectToServer("hami....@gmail.com", "asdasd");
while(!(client.isConnected())){
a.processEvents();
}
lbl.setText("Connected");
它确实连接但只是在Windows上。我已经尝试过GuiClient项目,但它们似乎都无法正常工作。
我改变了这一行
DEFINES += QXMPP_LIBRARY_TYPE=staticlib
到
DEFINES += QXMPP_LIBRARY_TYPE=shared
并构建libqxmpp.so
,但不再是。
我在我的应用程序的.pro
文件中写了这些行,用于将库添加到我的项目中。
CONFIG(debug, debug|release) {
win32{
QXMPP_LIBRARY_NAME_INC = qxmpp_d0
} else {
QXMPP_LIBRARY_NAME_INC = qxmpp_d
}
}else{
win32{
QXMPP_LIBRARY_NAME_INC = qxmpp0
}else{
QXMPP_LIBRARY_NAME_INC = qxmpp
}
}
LIBS += -L./qxmpp/src -l$$QXMPP_LIBRARY_NAME_INC
提前致谢。
答案 0 :(得分:0)
那是因为QDnsLookup不是为Android开发的。 我通过使用自己的服务器的IP地址来解决这个问题。 (使用ip地址的Google服务器无效)