2
我不確定如何正確收聽MultiUserChats,因爲顯然有兩種不同的方式來收聽它們。如何正確聆聽Smack中的MultiUserChat?
第一種方式是添加一個MessageListener每個房間,就像這樣:
MultiUserChat muc = new MultiUserChat(connection,"MyGroup");
muc.addMessageListener(new PacketListener() {
@Override
public void processPacket(Packet packet) throws NotConnectedException {
// TODO Auto-generated method stub
}
});
第二種方法是傾聽,你會正常單聊天消息:
PacketFilter filter = new MessageTypeFilter(Message.Type.groupchat);
connection.addPacketListener(new PacketListener() {
@Override
public void processPacket(Packet packet) {
Message message = (Message) packet;
if (message.getBody() != null) {
final String fromName = StringUtils.parseBareAddress(message.getFrom());
final String Rtext = message.getBody();
考慮我也在聽文件傳輸,你能幫我弄清楚哪種方式是正確的?
我們需要接收消息之前加入聊天室? –