我有一个游戏中心排行榜的iOS游戏。最近我发布了游戏,它没有任何问题。然后我做了游戏的简易版本,我想在两个游戏中使用相同的排行榜。我将游戏的两个版本合并到游戏中心组并修改了排行榜ID,因为Apple需要使用grp.
启动组排行榜名称。
现在,如果我加载分数,我收到零。但是,如果我首先提交一些分数并在之后加载我只获得本地玩家的分数。我检查了itunesconnect上的排行榜,我确信排行榜中有很多记录。排行榜与组合之前的排行榜相同。我认为游戏中心需要一些时间来更新,但是我等了大约一天仍然看不到变化。
所以我的问题是为什么我只收到本地球员的nil或得分?我做错了吗?或者这只是一个游戏中心的错误?
我在这里发现了一些类似的问题,但最近的一个问题是在两年前发布的。有没有人有任何想法?任何帮助表示赞赏!
以下是加载分数的代码:
func loadScores(){
let leaderboard = GKLeaderboard()
leaderboard.identifier = "grp.myLeaderboardID"
leaderboard.loadScores { (scores, error) in
if error != nil {
print(error!.localizedDescription)
} else {
//do something with the scores
}
}
}
}
并总结得分:
func submitScore(value: Int64) {
let leaderboardID = "grp.myLeaderboardID"
let sRating = GKScore(leaderboardIdentifier: leaderboardID)
sRating.value = value
GKScore.report([sRating], withCompletionHandler: { (error: Error?) -> Void in
if error != nil {
print(error!.localizedDescription)
}
})
}
更新。 问题突然发生了。我认为这个问题已经解决了苹果服务器的问题,但是已合并到一个小组