我正在按照教程与Android Studio制作一个非常基本的聊天应用,但我收到了错误:
错误:(131,45)错误:XMPPConnection是抽象的;不可能是 实例
在以下行:
ConnectionConfiguration connConfig = new ConnectionConfiguration(HOST, PORT, SERVICE);
XMPPConnection connection = new XMPPConnection(connConfig);
我也得到了一些"未处理的异常"尝试使用XMPPConnection元素时。
还链接到教程:LINK
答案 0 :(得分:9)
在Smack 4.0.0中看起来发生了变化。文档仍未更新。
看起来他们会在Smack 4.1中再次改变它:
What was
Connection connection = new XMPPConnection()
is
XMPPConnection connection = new XMPPTCPConnection()
in Smack 4 and will become
AbstractXMPPConnection connection = new XMPPTCPConnection()
in Smack 4.1
请参阅此链接:https://igniterealtime.org/issues/browse/SMACK-574
SMACK 4.0还有一个升级指南:https://community.igniterealtime.org/docs/DOC-2703
<强>更新强>
此外,看起来新的Smack 4.x库只能在Java 7及更高版本上运行。 Java 6向后兼容性已被破坏。
答案 1 :(得分:2)
ConnectionConfiguration也发生了变化。
XMPPTCPConnectionConfiguration config = XMPPTCPConnectionConfiguration.builder()
.setServiceName("example.org").setUsernameAndPassword("user", "password")
.setCompressionEnabled(false).build();