我正在开发一款支持游戏中心的游戏,而我在沙箱环境中遇到了一个问题。我可以毫无错误地成功报告得分。但是,当我显示排行榜时,没有可见的分数。为了验证分数是否实际到达,我使用以下代码查询本地用户的分数:
-(void)retrieveLocalScoreForCategory:(NSString *)category
{
GKLeaderboard *leaderboardRequest = [[GKLeaderboard alloc] init];
leaderboardRequest.category = category;
[leaderboardRequest loadScoresWithCompletionHandler: ^(NSArray *scores,NSError *error)
{
[self callDelegateOnMainThread: @selector(localPlayerScore:error:) withArg: leaderboardRequest.localPlayerScore error: error];
}];
}
在我的代表中,我将分数记录到控制台,我可以看到正确的分数。我已经验证我使用正确的排行榜类别ID(我只有一个)显示排行榜。
有谁知道为什么我的分数在沙盒环境中的排行榜上不可见?分数出现之前有延迟吗?
答案 0 :(得分:54)
我遇到过与我合作过的项目相同的问题。
如果排行榜上有两个或更多玩家,GC排行榜(沙盒/直播)将仅返回分数。
因此,请确保您在一台设备上提交2个不同的帐户,或在不同的设备上提交2个不同的帐户。
答案 1 :(得分:3)
尝试更改timeScope。
有时GKLeaderboardTimeScopeAllTime& GKLeaderboardTimeScopeToday只返回GKLeaderboardTimeScopeWeek正常工作。我认为这是一个GC沙盒服务器问题。
聆听我们Apple:使用其中一些数十亿美元来改善您的网络服务。