문제 : XMPPFramework 및 Openfire Server를 사용하여 iOS 채팅 응용 프로그램을 만들고 있습니다. 그러나 서버에 연결할 수 없습니다. I 그러나 GTalk 또는 Facebook 계정으로 로그인하십시오. 또한 Spark와 같은 다른 Jabber 클라이언트를 사용하여 자체 서버의 계정에 로그인 할 수 있습니다.XMPPFramework - Openfire 서버에 연결할 수 없습니다.
코드 : http://mobile.tutsplus.com/tutorials/iphone/building-a-jabber-client-for-ios-server-setup/ 여기
는이 연결 :
- (void)setupStream {
xmppStream = [[XMPPStream alloc] init];
[xmppStream addDelegate:self delegateQueue:dispatch_get_main_queue()];
}
- (BOOL)connect {
[self setupStream];
NSString *jabberID = [[NSUserDefaults standardUserDefaults] stringForKey:@"userID"];
NSString *myPassword = [[NSUserDefaults standardUserDefaults] stringForKey:@"userPassword"];
if (![xmppStream isDisconnected]) {
return YES;
}
if (jabberID == nil || myPassword == nil) {
return NO;
}
[xmppStream setMyJID:[XMPPJID jidWithString:jabberID]];
password = myPassword;
NSError *error = nil;
if (![xmppStream connect:&error])
{
UIAlertView *alertView = [[UIAlertView alloc] initWithTitle:@"Error"
message:[NSString stringWithFormat:@"Can't connect to server %@", [error localizedDescription]]
delegate:nil
cancelButtonTitle:@"Ok"
otherButtonTitles:nil];
[alertView show];
[alertView release];
return NO;
}
return YES;
}
업데이트 3월 19일 : 그것이 그래서 NSError가 채워되지 않습니다 내 코드의 기본은 다음 튜토리얼입니다 오류가 무엇인지 알기가 어렵습니다. 그러나 코드를 통해 디버깅했으며 QueryRecordCallback
의 오류가 XMPPSRVResolver
인 것을 발견했습니다. 오류 코드는 -65554입니다. 이것에 대한 구글 후, 나는이를 발견했다 ... kDNSServiceErr_NoSuchRecord = -65554
,
그러나,이 'NoSuchRecord'문제를 해결하는 방법을 아직 확실하지 오전. 또한 OpenFire Server에 로그온하면 OpenFire Server에 도달하지 못한다는 것을 의미합니다.