明确答案是什么playersToInvite是

游戏中心文件表明

当您的应用程序直接从Game Center应用程序启动以主持一个匹配时, playersToInvite参数不为零。

有几个人曾经问过这是如何工作的,也就是说,似乎没有办法从Game Center应用程序中select一个朋友,并邀请他们 Game Center中玩游戏; 它只适用于你在游戏中邀请。 这个文档的date或者有没有一个秘密的方法来从Game Center开始一个特定于游戏的比赛? 我想testing我的inviteHandler但我一直无法确定如何将这个parameter passing给应用程序。

 [GKMatchmaker sharedMatchmaker].inviteHandler = ^(GKInvite *acceptedInvite, NSArray *playersToInvite) { // clean up games in progress here if (acceptedInvite) { NSLog(@"acceptedInvite %@", acceptedInvite); // The acceptedInvite parameter is non-nil when the application receives an // invitation directly from another player. GKMatchmakerViewController *mmvc = [[[GKMatchmakerViewController alloc] initWithInvite:acceptedInvite] autorelease]; mmvc.matchmakerDelegate = self; [self disableHomeUI]; [self presentModalViewController:mmvc animated:YES]; } else if (playersToInvite) { NSLog(@"playersToInvite %@", playersToInvite); // playersToInvite parameter is non-nil when your application is launched // directly from the Game Center application to host a match [self disableHomeUI]; [self doPresentMatchMakerUIWithPlayersToInvite:playersToInvite]; } }; 

我认为这些文件并不反映当前的情况。 据我所知,游戏中心应用程序甚至不提供邀请朋友玩的界面。

另外,检查开发者论坛(显然你有;))。 有人从库比蒂诺似乎认为这是不可能的。 所以…

在我的应用程序Cee-lo投入生产后, playersToInvite代码变得活跃起来。 这似乎是因为游戏中心应用程序本身的沙盒版本不允许你从那里开始玩家的游戏,但生产版本。 如果你问我,不是一个很好的testing环境!

现在有一种方法可以使用Game Center应用来邀请Game Center的朋友。 它只适用于你的游戏调用registerListener:在localPlayer GKPlayer上:

游戏中心应用程序 – >游戏选项卡 – >您的游戏 – >玩家部分 – >select一个玩家 – >“玩游戏”

这将向其他玩家发送推送通知邀请。 游戏不一定要在任一设备上运行。 截至iOS7。

游戏中心应用程序 – >朋友标签 – >点击朋友 – >点击一个共同的游戏(你的游戏) – >点击右上angular的“…” – >点击“播放”

我可能是错的,但我认为这只是“模拟器”,不能邀请特定的朋友玩。

我已经能够使用2个或更多的在沙箱中运行的iPhone来邀请特定的朋友玩,并且它已经在debugging邀请处理程序代码片段方面起了很大的作用。

正如另一张海报所提到的,目前似乎还没有邀请特定的朋友从Game Center玩特定游戏的方式。

快乐的游戏!