我遇到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)")
}
}
}
我错过了什么?
答案 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")
}
}
}
}
}