我正在使用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) ....
谁能帮我解决这个错误?谢谢!
答案 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)
首先!
祝你好运!
除此之外,当您想要创建多用户聊天或者您可能会遇到奇怪的错误时,您还要确保您的房间名称不包含空白!