将opefire服务器连接好,然后再进行身份验证:
- (void)xmppStreamDidConnect:(XMPPStream *)sender{
NSLog(@"connected --->YES");
isOpen = YES;
NSError *error = nil;
[xmppStream authenticateWithPassword:@"password" error:&error];
}
Openfire日志显示:
2012.08.01 19:13:35 org.apache.mina.filter.executor.ExecutorFilter - Exiting since queue is empty for /121.0.29.220:60789
2012.08.01 19:13:35 org.apache.mina.filter.executor.ExecutorFilter - Launching thread for /121.0.29.220:60789
2012.08.01 19:13:35 org.apache.mina.filter.executor.ExecutorFilter - Exiting since queue is empty for /121.0.29.220:60789
2012.08.01 19:13:35 org.apache.mina.filter.executor.ExecutorFilter - Launching thread for /121.0.29.220:60789
2012.08.01 19:13:35 org.apache.mina.filter.executor.ExecutorFilter - Exiting since queue is empty for /121.0.29.220:60789
2012.08.01 19:13:35 org.apache.mina.filter.executor.ExecutorFilter - Launching thread for /121.0.29.220:60789
2012.08.01 19:13:35 org.jivesoftware.util.log.util.CommonsLogFactory - 000065 (01/05/00) - Connection #5 tested: OK
2012.08.01 19:13:35 org.jivesoftware.util.log.util.CommonsLogFactory - 000066 (01/05/00) - Connection #5 tested: OK
2012.08.01 19:13:35 org.jivesoftware.openfire.auth.AuthorizationManager - AuthorizationManager: Trying Default Mapping.map(shitiven)
2012.08.01 19:13:35 org.jivesoftware.openfire.auth.DefaultAuthorizationMapping - DefaultAuthorizationMapping: No realm found
2012.08.01 19:13:35 org.jivesoftware.openfire.auth.AuthorizationManager - AuthorizationManager: Trying Default Policy.authorize(shitiven , shitiven)
2012.08.01 19:13:35 org.jivesoftware.openfire.auth.DefaultAuthorizationPolicy - DefaultAuthorizationPolicy: Checking authenID realm
2012.08.01 19:13:35 org.jivesoftware.util.log.util.CommonsLogFactory - 000066 (01/05/00) - Connection #2 tested: OK
2012.08.01 19:13:35 org.jivesoftware.util.log.util.CommonsLogFactory - 000067 (01/05/00) - Connection #2 tested: OK
2012.08.01 19:13:35 org.jivesoftware.util.log.util.CommonsLogFactory - 000067 (01/05/00) - Connection #1 tested: OK
2012.08.01 19:13:35 org.jivesoftware.util.log.util.CommonsLogFactory - 000068 (01/05/00) - Connection #1 tested: OK
2012.08.01 19:13:35 org.apache.mina.filter.executor.ExecutorFilter - Exiting since queue is empty for /121.0.29.220:60789
2012.08.01 19:13:35 org.apache.mina.filter.executor.ExecutorFilter - Launching thread for /121.0.29.220:60789
2012.08.01 19:13:35 org.apache.mina.filter.executor.ExecutorFilter - Exiting since queue is empty for /121.0.29.220:60789
2012.08.01 19:13:35 org.apache.mina.filter.executor.ExecutorFilter - Launching thread for /121.0.29.220:60789
2012.08.01 19:13:35 org.apache.mina.filter.executor.ExecutorFilter - Exiting since queue is empty for /121.0.29.220:60789
但是委托方法“xmppStreamDidAuthenticate”没有调用:
- (void)xmppStreamDidAuthenticate:(XMPPStream *)sender{
NSLog(@"login success!!");
[self goOnline];
}
当我输入错误的用户标识或密码时,委托方法“didNotAuthenticate”调用:
- (void)xmppStream:(XMPPStream *)sender didNotAuthenticate:(NSXMLElement *)error{
NSLog(@"authenticate fail %@",error); //console to the debug pannel
}
任何人都可以帮助我吗?
答案 0 :(得分:0)
我怀疑你被这里描述的问题所困扰:https://github.com/robbiehanson/XMPPFramework/issues/81
您必须更新xmppframework才能解决此问题。