游戏中心错误

时间:2013-04-11 17:07:36

标签: iphone ios game-center gamekit multiplayer

我在这里关注教程。 Multiplayer Game iOS

我正在使用上面的匹配制作教程中的以下代码

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];

当我使用“立即播放”选项搜索其他玩家时,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)

“无法与服务器通信”错误。

然而,代码在模拟器上运行良好。

2 个答案:

答案 0 :(得分:3)

我也有

  

错误域= GKErrorDomain代码= 3“请求的操作不能   由于与服务器通信时出错而完成。“   UserInfo = 0x17007e4c0 {GKServerStatusCode = 5001,   NSLocalizedDescription =无法完成请求的操作   由于与服务器通信时出错。,   NSUnderlyingError = 0x170050140“操作无法完成。   (GKServerErrorDomain错误5001。)

我认为这是sandbox.gc.apple.com问题.. 这个问题是一年,但苹果有时会出现这个问题

希望苹果很快解决这个问题。

我尝试使用iPod touch而且

  

错误域= NSURLErrorDomain代码= -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 =请求超时。}

答案 1 :(得分:1)

使用reportScoreWithCompletionHandler发送新的高分时遇到同样的问题(GKServerStatusCode = 5001)。

在沙盒模式下一切正常,但AppStore版本在启用了沙盒模式的所有设备上都存在此问题(iOS 8.2 / 8.3)。但我可以在排行榜中看到其他用户的数据。看起来这实际上是苹果方面的错误。