我正在尝试在游戏中心报告我的最高分。我认为我的代码可以正常工作,但游戏中心的评分却没有更新。
创建的排行榜的引用名称为:“funfairBalloon”,并且此排行榜的ID为:55000943。
我有3位沙盒测试员,启用了游戏中心,并且在游戏中心对玩家进行了身份验证。
我的身份验证和报告代码是:
func authenticateLocalPlayer()
{
var localPlayer = GKLocalPlayer.localPlayer()
localPlayer.authenticateHandler =
{ (viewController : UIViewController!, error : NSError!) -> Void in
if viewController != nil
{
self.presentViewController(viewController, animated:true, completion: nil)
}
else
{
if GKLocalPlayer.localPlayer().authenticated {
let gkScore = GKScore(leaderboardIdentifier: "55009943")
gkScore.value = Int64(highscore)
GKScore.reportScores([gkScore], withCompletionHandler: {(error) -> Void in
let alert = UIAlertView(title: "Success",
message: "Score updated",
delegate: self,
cancelButtonTitle: "Ok")
alert.show()
})
}
}
}
}
你有好主意吗?
最佳答案
最佳做法是将您的应用ID添加到页首横幅标识符。在此之前,我很难让它无法正常工作。您可能遇到了同样的麻烦。创建一个名为“com.whateverName.55009943”的测试排行榜,并更新您的代码。看看那是否对我有用。
如果您要对沙盒测试人员使用Test Flight,请确保也将其添加到iTunes connect中。
最后,此link应该可以帮助您解决如果遵循上述建议,为什么看不到任何人出现在排行榜上的问题。
关于iphone - 如何 swift 报告游戏中心的高分,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/27304035/