Gamecenter“欢迎”-Banner没有出现

时间:2014-10-03 09:20:08

标签: ios xcode swift ios8 game-center

我遇到Gamecenter问题。实际上我不知道它真的是一个问题。

在对localPlayer进行身份验证后,"欢迎" -Banner未显示。 这是为什么?这是否表明出现了问题?

我用Swift和SpriteKit用Gamecenter集成编写了我的第一个应用程序。当我打开我的应用程序时,Gamecenter会对我的localPlayer进行身份验证。

GKLocalPlayer.localPlayer().authenticated     // is true

打开排行榜也很好。如果我退出Gamecenter并再次打开我的应用程序,它会要求我使用Gamecenter提供的视图登录。

显示GKNotification也没问题。立即弹出。

这是我验证播放器的代码:

func authenticateLocalPlayer(){
    var localPlayer = GKLocalPlayer()
    localPlayer.authenticateHandler = {(viewController, error) -> Void in
        if ((viewController) != nil) {
            self.presentViewController(viewController, animated: true, completion: nil)
        }else{
            println("(GameCenter) Player authenticated: \(GKLocalPlayer.localPlayer().authenticated)")   
        }

    }

}

我错过了什么?

1 个答案:

答案 0 :(得分:0)

我正在使用它来验证游戏中心,我从来没有遇到任何问题(总是欢迎横幅):

func authenticateLocalPlayer() {
    let localPlayer = GKLocalPlayer.localPlayer()
    localPlayer.authenticateHandler =
        { (viewController : UIViewController?, error : NSError?) -> Void in
            if viewController != nil
            {
                self.presentViewController(viewController!, animated:true, completion: nil)
            }
            else
            {
                if localPlayer.authenticated
                {
                    print("Player authenticated")
                    self.gameCenterEnabled = true
                    isAuthenticated = true
                    localPlayer.loadDefaultLeaderboardIdentifierWithCompletionHandler
                        { (leaderboardIdentifier, error) -> Void in
                            if error != nil
                            {
                                print("error", appendNewline: false)
                            }
                            else
                            {
                                self.leaderboardIdentifier = leaderboardIdentifier
                                print("\(self.leaderboardIdentifier)")
                            }
                    }
                }   else {
                    print("Not able to authenticate")
                    self.gameCenterEnabled = false

                    if error != nil
                    {
                        print("\(error!.description)")
                    }
                    else
                    {
                        print("error is nil")
                    }
                }
            }
    }
}