游戏中心登录对话没有出现

时间:2013-11-07 19:04:52

标签: ios game-center

我正在使用苹果游戏中心在游戏开始时签署玩家,问题是我刚刚点击取消(最终测试),现在对话框将不再出现,它只是继续直奔残疾人。

这是我正在使用的功能。

-(void) setup
{
    gameCenterAuthenticationComplete = NO;

    if (!isGameCenterAPIAvailable()) {
        // Game Center is not available.
        NSLog(@"Game Center is not available.");
    } else {
        NSLog(@"Game Center is available.");

        __weak typeof(self) weakSelf = self; // removes retain cycle error

        GKLocalPlayer *localPlayer =  [GKLocalPlayer localPlayer]; // localPlayer is the public GKLocalPlayer

        __weak GKLocalPlayer *weakPlayer = localPlayer; // removes retain cycle error

        weakPlayer.authenticateHandler = ^(UIViewController *viewController, NSError *error)
        {
            if (viewController != nil)
            {
                NSLog(@"Try to show ViewController");
                [weakSelf showAuthenticationDialogWhenReasonable:viewController];
            }
            else if (weakPlayer.isAuthenticated)
            {
                NSLog(@"authenticate player");
                [weakSelf authenticatedPlayer:weakPlayer];
            }
            else
            {
                NSLog(@"disable");
                [weakSelf disableGameCenter];
            }
        };
    }

}

-(void)disableGameCenter
{

}

正如您所见,disableGameCenter实际上并没有做任何事情。

为什么每次我运行它都会禁用它? (使用模拟器)我怎样才能解决这个问题,以便再次出现对话?我是否必须手动强制对话以某种方式再次出现?

1 个答案:

答案 0 :(得分:0)

在你"取消"之后,我在OSX下遇到了类似的问题。 Gamecenter对话框几次,它停止出现。

要取回它,运行"游戏中心",登录和退出 - 然后再次运行游戏,对话框将再次出现(它至少可以运行几次,直到你'经常取消)。