2013-04-11 5 views
1

Я следую учебнику здесь. Multiplayer Game iOSОшибка в Game Center

Я использую следующий код из выше учебника для матча Создание

GKMatchRequest *request = [[[GKMatchRequest alloc] init] autorelease]; 
request.minPlayers = minPlayers;  
request.maxPlayers = maxPlayers; 
request.playersToInvite = pendingPlayersToInvite; 

GKMatchmakerViewController *mmvc = [[[GKMatchmakerViewController alloc] initWithMatchRequest:request] autorelease];  
mmvc.matchmakerDelegate = self; 

[presentingViewController presentModalViewController:mmvc animated:YES]; 

Когда я искать других игроков, использующих Play Now опцию, GKMatchmakerViewController уволен немедленно делегировании matchmakerViewController:didFailWithError со следующей ошибкой.

Error Domain=GKErrorDomain Code=3 "The requested operation could not be 
completed due to an error communicating with the server." UserInfo=0x2081d8d0 
{GKServerStatusCode=5001, NSUnderlyingError=0x2086c560 "The operation couldn’t be 
completed. (GKServerErrorDomain error 5001.)", NSLocalizedDescription=The requested 
operation could not be completed due to an error communicating with the server.} 

Я не смог понять, почему это происходит. Тот же самый кодом ранее был в состоянии искать и находить соответствующие игрок, но не при выборке игроков псевдонимов с помощью

[GKPlayer loadPlayersForIdentifiers:match.playerIDs withCompletionHandler:^(NSArray *players, NSError *error) 

с «не удается установить связь с сервером» ошибки.

Код, однако, отлично работает на симуляторе.

+0

Только что началось со мной пару часов назад после кодирования всю ночь. Возможно, серверы отключены? – PWiggin

+0

Возможно, потому что теперь он работает нормально. :( – tGilani

+0

Приглашения в игровой центр не работают в наши дни, я не знаю, что происходит с игровым центром SandBox. Надеюсь, что ваша проблема возникнет из-за этого. – Aitul

ответ

3

Я также получил

Ошибка домена = GKErrorDomain Code = 3 «Запрошенная операция не может быть завершена из-за ошибки связи с сервером.» UserInfo = 0x17007e4c0 {GKServerStatusCode = 5001, NSLocalizedDescription = Требуемая операция не может быть завершена из-за ошибки связи с сервером., NSUnderlyingError = 0x170050140 «Операция не может быть завершена. (GKServerErrorDomain ошибка 5001.)

Я думаю, что это sandbox.gc.apple.com проблема .. этот вопрос один год, но до сих пор яблоко есть эта проблема когда-то

желание яблока исправить это в ближайшее время.

я примерить на IPod Touch и я получил

Ошибка домена = NSURLErrorDomain Code = -1001 UserInfo = 0x176bec90 {NSErrorFailingURLKey = http://sandbox.gc.apple.com/WebObjects/GKInit.woa/wa/getBag?ix=1, NSErrorFailingURLStringKey = http://sandbox.gc.apple.com/WebObjects/GKInit.woa/wa/getBag?ix=1, NSLocalizedDescription = "Запрос тайм-аут." запрошенное время.}

+0

да, проблема была в том, что серверы не реагировали. – tGilani

1

Эта проблема возникает (GKServerStatusCode = 5001) при отправке нового высокоуровневого результата с использованием reportScoreWithCompletionHandler.

В режиме песочницы все в порядке, но версия AppStore имеет эту проблему на всех устройствах, где включен режим песочницы (iOS 8.2/8.3). Но я вижу данные от других пользователей в списках лидеров. Похоже, это на самом деле ошибка со стороны Apple.