Sprite Kit游戏中心排行榜

时间:2014-05-27 17:25:40

标签: sprite-kit game-center game-center-leaderboard

所以我一直在阅读文章和Apple开发者库一段时间,但我无法解决这个问题。

我希望我的应用程序有一个游戏中心排行榜,可通过我的游戏菜单访问。但是,由于我使用Sprite Kit创建我的游戏,这导致了一些问题。

我在iTunes Connect中注册了我的应用程序,启用了游戏中心,Xcode中的身份信息与iTunes Connect中的身份信息相匹配。

我创建了一个按钮,应打开游戏中心排行榜。当它被点击时,这称为:

GKLeaderboardViewController *leaderboardController = [[GKLeaderboardViewController    alloc] init];
    if (leaderboardController != NULL)
    {
        leaderboardController.timeScope = GKLeaderboardTimeScopeAllTime;
        leaderboardController.leaderboardDelegate = self;
        GKGameCenterViewController *gameCenterController = [[GKGameCenterViewController alloc] init];
        if (gameCenterController != nil)
        {
            gameCenterController.viewState = GKGameCenterViewControllerStateLeaderboards;
            UIViewController *vc = self.view.window.rootViewController;
            [vc presentViewController: gameCenterController animated: YES completion:nil];
        }

    }

现在我收到消息,因为没有玩家登录,游戏中心不可用。

要解决此问题,我尝试使用apple中的身份验证方法:

- (void) authenticateLocalPlayer { GKLocalPlayer *localPlayer = [GKLocalPlayer localPlayer]; localPlayer.authenticateHandler = ^(UIViewController *viewController, NSError *error){ if (viewController != nil) { //showAuthenticationDialogWhenReasonable: is an example method name. [self showAuthenticationDialogWhenReasonable: viewController]; } else if (localPlayer.isAuthenticated) { //authenticatedPlayer: is an example method name. [self authenticatedPlayer: localPlayer]; } else { [self disableGameCenter]; } }]; }

我现在无法定义在身份验证方法中调用这些方法。

我明确的问题:如何验证本地播放器?

0 个答案:

没有答案