每当我收到任何新消息时,这两种方法都会被调用两次。
- (BOOL)xmppStream:(XMPPStream *)sender didReceiveIQ:(XMPPIQ *)iq
- (void)xmppStream:(XMPPStream *)sender didReceiveMessage:(XMPPMessage *)message
我正在向服务器发送请求以使用以下代码获取我的名单。
NSXMLElement *query = [NSXMLElement elementWithName:@"query" xmlns:@"jabber:iq:roster"];
XMPPIQ *iq = [XMPPIQ iq];
[iq addAttributeWithName:@"id" stringValue:@"buddyRequest"];
[iq addAttributeWithName:@"to" stringValue:@"54.186.107.171"];
[iq addAttributeWithName:@"type" stringValue:@"get"];
[iq addChild:query];
[self.xmppStream sendElement:iq];
有人可以向我指出问题所在吗?
谢谢。
答案 0 :(得分:3)
我认为你将委托设置为XMPPStream两次。移动一个并检查。然后你也得到了两个响应,检查xmppstream对象的值。两者都不同,肯定你设置了两次。