Теперь я пытаюсь создать XMPP MUC комнату в android, используя asmack-android-7.jar api. Во-первых, я создаю мгновенную комнату, затем добавляю слушателя в комнату. фрагмент кода следующим образом:
//create the an instant room if the same room has not been created.
MultiUserChat muc = new MultiUserChat(mConnection, roomJid);
muc.create(ownerNickname);
muc.sendConfigurationForm(new Form(Form.TYPE_SUBMIT));
//join a room and add listener
mMuc = new MultiUserChat(mConnection, roomJid);
mMuc.join(vistorNickname);
addListenerToMuc(mMuc);
//the listener function
private void addListenerToMuc(MultiUserChat muc){
if(null != muc){
muc.addMessageListener(new PacketListener() {
@Override
public void processPacket(Packet packet) {
Log.i("processPacket", "receiving message");
}
});
}
}
то все становится очень запутанным для меня, во-первых, несколько раз, когда слушатель работает хорошо, но когда я покидаю комнату, тогда воссоединяюсь, тогда слушатель всегда может обработать сообщение как форму:
RCV (723971008): <body> from nutch</body>
Тем не менее, слушатель всегда работает достаточно хорошо, когда следующее сообщение выглядит следующим образом:
<body>I love you</body>
похоже, что сообщения с одним или несколькими расширениями всегда работают хорошо, в то время как те, которые не имеют расширения, иногда могут не работать. Я действительно смущен этим, может ли кто-нибудь сказать мне, что произошло? Я буду очень благодарен за вашу идею.
другой вопрос, который я нашел, заключается в том, что если я сначала создаю Мгновенную комнату, то присоединяюсь к комнате, не создавая новый объект MulitUserChat, тогда комната не может присоединиться к другим,
например, с использованием искрового клиента, а затем получить ошибку, заявив, что номер не существует, чтобы быть конкретным, фрагмент кода выглядит так:
MultiUserChat mMuc = new MultiUserChat(mConnection, roomJid);
muc.create(ownerNickname);
muc.sendConfigurationForm(new Form(Form.TYPE_SUBMIT));
//join a room and add listener
mMuc.join(vistorNickname);
Я действительно испытываю разочарование в отношении этих вещей, все идеи приветствуются. Огромное спасибо.