【问题标题】:iOS Game Center: Scores not showing on leaderboard in sandboxiOS 游戏中心:分数未显示在沙盒中的排行榜上
【发布时间】:2012-01-03 23:51:22
【问题描述】:

我正在开发支持 Game Center 的游戏,但在沙盒环境中遇到了问题。我可以成功无误地报告分数。但是,当我显示排行榜时,没有可见的分数。为了验证分数是否真的到达那里,我使用以下代码查询本地用户的分数:

-(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 显示排行榜(我只有一个)。

有谁知道为什么我的分数在沙盒环境中的排行榜上无法立即显示?分数显示有延迟吗?

【问题讨论】:

    标签: ios game-center


    【解决方案1】:

    我在从事的项目中遇到了同样的问题。

    GC 排行榜(沙盒/实时)仅在排行榜上有两个或更多玩家时才会返回分数。

    因此,请确保您在一台设备上使用 2 个不同帐户提交分数,或者在不同设备上使用 2 个不同帐户提交分数。

    【讨论】:

    • 在我的 3GS 测试设备上创建了另一个用户,它现在可以工作了。谢谢。
    • +1 - 我一定看过数百个不正确的原因,这对我节省头发至关重要。我的发际线谢谢你。
    • @StephenMorris 哈哈没问题,伙计,很高兴我能帮上忙。我第一次遇到这个问题是从同事那里才知道的
    • 也拯救了我的头发。我猜这是因为他们需要添加“Top X%”。他们无法用排行榜中的一名玩家来计算:p
    • 我在两台不同的设备上使用了两个不同的账号都没有成功,请问是什么问题?
    【解决方案2】:

    尝试更改 timeScope。

    有时 GKLeaderboardTimeScopeAllTime 和 GKLeaderboardTimeScopeToday 什么都不返回,但 GKLeaderboardTimeScopeWeek 工作正常。我认为这是一个 GC 沙盒服务器问题。

    听听 Apple 的意见:使用其中的一部分来改善您的网络服务。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-05-06
      相关资源
      最近更新 更多