我有一个iMessage应用程序,并试图获得排行榜的分数。我收到了错误信息。
Error Domain=GKErrorDomain Code=3 "由于与服务器通信错误,请求的操作无法完成。" UserInfo={GKServerStatusCode=5043,NSLocalizedDescription=由于与服务器通信错误,请求的操作无法完成。NSUnderlyingError=0x600000ed3960 {Error Domain=GKServerErrorDomain Code=5043 "状态=5043,MyApp不支持排行榜" UserInfo={GKServerStatusCode=5043, NSLocalizedFailureReason=状态=5043,MyApp不支持排行榜}}。
请注意,我的应用已经上线,游戏中心已经启用,而且在iTunes Connect上创建排行榜已经好几天了。
func getScoreLeaderboard(leaderboardIdentifier:String, completion:@escaping ((_ resultScore:GKScore?) -> Void)) {
let leaderBoardRequest = GKLeaderboard()
leaderBoardRequest.identifier = leaderboardIdentifier
leaderBoardRequest.loadScores {
(resultGKScore, error) in
guard error == nil && resultGKScore != nil else {
completion(nil)
return
}
completion(leaderBoardRequest.localPlayerScore)
}
}
我有一个疑问,但不确定是否是这个问题。问题可能是。
我有一个iMessage应用,捆绑ID,例如: com.mygame
. 在iTunes Connect上,我做了一个测试应用,以检查在应用购买问题上遇到的问题。而它的捆绑ID是 com.mygame.MessagesExtension
.
我认为,它是试图从应用程序中获取排行榜与扩展捆绑ID。这可能吗?因为我的应用程序 com.mygame
是活的,我无法删除扩展测试应用程序,虽然它没有被使用。
任何帮助是感激的。
我确认排行榜是从测试应用中获取的,而不是从实际应用中获取的。我最终通过Firebase而不是Game Center来实现分数管理。苹果的客服真是可怜。