저는 이제 asmack-android-7.jar API를 사용하여 android에 XMPP MUC 룸을 구축하려고합니다. 먼저 인스턴트 룸을 만든 다음 muc 리스너를 방에 추가합니다. 코드 조각은 다음과 같이 내가 방 다음에 다시 떠날 때내 xmpp muc 메시지 리스너가 때때로 작동하지 않는 이유
다음//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");
}
});
}
}
일이 정말 나에게 혼란을 얻을 먼저, 청취자가 잘 작동 약간의 시간이 있지만, 그 청취자가 항상 같은 메시지를 처리하지 못할 수 있습니다 이 같은 형태 :
<message id="S7JfM-111" to="寻李白@xjopenfire/KascendVideo" type="groupchat" from="哈特的战争@conference.xjopenfire/[email protected]"><body>I love you</body><x xmlns="jabber:x:event"><offline/><delivered/><displayed/><composing/></x></message>
가 하나 MOR와 메시지처럼 보인다 : 이런 오는 메시지가 때
RCV (723971008): <message id="FdkcR-24" to="寻李白@xjopenfire/KascendVideo" type="groupchat" from="哈特的战争@conference.xjopenfire/nutch"><body> from nutch</body></message>
그러나, 청취자가 항상 잘 공정하게 작동 e 확장은 항상 잘 작동하지만 확장이없는 확장은 때때로 실패하는 경향이 있습니다. 나는 이것에 관해 정말로 혼란 스럽다, 어떤 신체가 나에게 무엇이 일어 났는지에 관해 이야기 할 수 있냐? 나는 너의 생각에 정말로 감사 할 것이다.
또 다른 질문은 내가 처음 인스턴트 룸을 만든 다음 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);
난 정말 이런 것들에 대한 좌절 느낌이있어, 모든 아이디어는 환영합니다. 매우 감사합니다.