我使用MultiUserChat(muc)开发了一个群聊应用程序。问题是我无法破坏openfire网站的持久聊天室。当我删除一个群聊室时,它会从openfire中删除,但是当我点击Android应用程序中的删除组时,它会再次出现但没有群聊的名称。例如,考虑一组“欢迎(gf5wkw97wmd9ygzo)”。它的名字是“欢迎”,房间ID是“gf5wkw97wmd9ygzo”。但当我删除它并从Android应用程序点击删除的组时,它只出现房间ID,即只有“gf5wkw97wmd9ygzo”。我在这里是截图。在创建或删除名为“welcom”的群组聊天室之后,它看起来像: welcome(nv8vb53l5q88kf9r)
从openfire网站删除欢迎群组后,会显示以下消息,并且不显示群组。 房间成功销毁 从这里不存在问题
但是当我从Android应用程序中选择此组并刷新openfire网页时,它看起来像: 的 nv8vb53l5q88kf9r
请注意,这里只有房间ID:“nv8vb53l5q88kf9r”没有出现“欢迎”的群组名称,而且不再存在。
确切的情况是我使用以下代码从Android应用程序中删除群聊室:
muc = new MultiUserChat(xmppConnection, roomId);
muc.join(jid);
muc.destroy("was tesing room", null);
请在这方面帮助我
答案 0 :(得分:1)
new MultiUserChat(xmppConnection, roomId);
此行立即在openfire中创建房间;发送销毁请求后,它将删除该房间。
但是当你在android中选择房间检查你的代码时,如果你使用上面的行没有检查房间存在与否,那么在上面的行之前检查使用getRoomInfo();这将返回未找到的项目,然后从书签中清除该房间...否则加入并收听消息。
实际房间欢迎(nv8vb53l5q88kf9r)'删除并使用jid' nv8vb53l5q88kf9r'创建新房间。并且您还没有发送配置表单,因此它没有名称;所以它显示为nv8vb53l5q88kf9r。
另外检查是openfire正在向房间参与者发送任何删除智商;然后听取并采取行动。
希望这有帮助。