XMPP Android - 无法创建MultiUserChat

时间:2011-05-13 00:41:29

标签: android xmpp smack asmack

我正在使用asmack最新版本(现在)。我无法在Android上创建MultiUserChat。

这是我在日志中得到的:

  

E / AndroidRuntime(558):java.lang.ClassCastException:   org.jivesoftware.smack.packet.DefaultPacketExtension E / AndroidRuntime(   558):at   org.jivesoftware.smackx.muc.MultiUserChat.getMUCUserExtension(MultiUserChat.java:2000)   E / AndroidRuntime(558):at   org.jivesoftware.smackx.muc.MultiUserChat.create(MultiUserChat.java:364)   ....

谁能帮我解决这个错误?谢谢!

3 个答案:

答案 0 :(得分:2)

直接使用muc.join();,而不是先使用muc.create

答案 1 :(得分:0)

Google是您的朋友,至少是quick search on the jive community forums.

我认为你有forgotten to register the Providers for XMPP Extensions.这通常是通过配置文件通过smack完成的,但是这个过程在使用asmack的Android上是不可能的,所以你需要明确地这样做。

答案 2 :(得分:0)

当你想使用smack创建MultiUserChat时,也许你会遇到一些错误! 我建议你在Android上使用asmack而不是smack! 你可以从github获得asmack,https://github.com/flowdalic/asmack! 在使用它之前,你必须确保你已经刷了README.md! 当你想在每个活动中呼叫api时!你应该打电话 SmackAndroid.init(context)首先! 祝你好运!

除此之外,当您想要创建多用户聊天或者您可能会遇到奇怪的错误时,您还要确保您的房间名称不包含空白!