2014-10-03 2 views
1

게임 센터에 문제가 있습니다. 실제로 나는 그것이 정말로 문제인지 모른다.게임 센터 "환영"- 배너가 나타나지 않습니다.

내 localPlayer를 인증 한 후 "환영"배너가 표시되지 않습니다. 왜 그럴까요? 그게 뭔가 잘못되었다는 신호인가?

저는 Gamecenter 통합으로 Swift 및 SpriteKit으로 첫 번째 앱을 작성했습니다. 내 앱을 열면 Gamecenter가 내 localPlayer를 인증합니다.

GKLocalPlayer.localPlayer().authenticated  // is true 

리더 보드를 여는 것도 좋습니다. Gamecenter에서 로그 아웃하고 내 App을 다시 열면 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)") 
     } 

    } 

} 

내가 무엇을 놓치고 :

이 플레이어를 인증하려면 코드는?

+0

당신의 authenticateLocalPlayer() 내 GameViewController에서 – WMios

+0

하고 호출한다 viewDidLoad() – MikeB

+0

앱 대리인 – WMios

답변

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") 
        } 
       } 
      } 
    } 
}