我正在使用Game Center,我知道展示Game Center视图控制器以显示玩家的所有开放(回合制)比赛很容易。但我还想显示用户当前参与的匹配项数,并提供快速链接以在不使用 Game Center 视图控制器的情况下打开这些匹配项。有没有办法做到这一点?
您可以使用以下方法从游戏中心检索匹配项列表:
GKTurnBasedMatch loadMatchesWithCompletionHandler
我附加了一个代码片段来显示我是如何加载它们的。GameKitHelper是我用来执行一些常见游戏工具包操作的单例。我还要求球员别名与比赛信息一起显示它们。
[GKTurnBasedMatch loadMatchesWithCompletionHandler:^(NSArray *matches, NSError *error)
{
if (error)
{
NSLog(@"Load matches error: %@", error.description);
// more error processing here
return;
}
self.currentMatches = matches;
// upate all the matches match data, then end any orphan matches, then get player aliases
// it is very important to update all the match data, because the loadMatchesWithCompletionHandler
// will have no match data, or old match data.
[GameKitHelper updateMatchesMatchData:self.currentMatches completionHandler:^(NSError *error) {
[GameKitHelper endOrphanedMatches:matches completionHandler:^(NSError *error) {
[self requestPlayerAliasesFromGameCenterForMatches:self.currentMatches];
}];
}];
}];