沙箱排行榜空

我正在尝试为我的应用制作Game Center排行榜。 我一直在遵循Apple的步骤并遵循GKTapper的示例代码,但我无法在Game Center中显示任何分数。 我已经在iTunes Connect中设置了排行榜。 以下是报告分数的代码:

- (void) reportScore: (int64_t) score forCategory: (NSString *) category {
    GKScore *scoreReporter = [[[GKScore alloc] initWithCategory:category] autorelease];
    scoreReporter.value = score;

    [scoreReporter reportScoreWithCompletionHandler:^(NSError *error) {
        if (error != nil)
        {
            UIAlertView* alert= [[[UIAlertView alloc] initWithTitle: @"Score Report Failed!" message: [NSString stringWithFormat: @"Reason: %@", [error localizedDescription]] delegate: self cancelButtonTitle: @"Try Again..." otherButtonTitles: NULL] autorelease];
            [alert show];
        }
    }];
}

代码似乎运行良好。 该警报从不显示。 但是,当我进入Game Center时,排行榜是空白的。 我正在运行Xcode 4.2和iOS 5.任何想法?


无论如何都是完全正确的:

  • 你需要一个int_64t分数;
  • 你需要在iTunesConnect上设置所有的东西;
  • 您需要使用沙盒帐户。
  • 我刚刚发现的是,iTunesConnect中没有类似的东西。 另一方面,您应该使用排行榜类别启动您的GKScore。

    从我在论坛上看到的情况来看,大约2/3的人都是正确的。

    在iTunesConnect中,当您配置排行榜时,您可以设置:

  • 其参考资料(我一直认为是该类别);
  • 其ID(事实证明是实际的类别)。
  • 我试图使用引用而不是ID发布分数。

    两件事情 :

  • 首先,我从程序中没有错误(这在某种程度上是可以接受的);
  • 第二,一旦我明白了,我注意到,虽然很多人声称相反,但不需要多个沙箱帐户来显示分数。

  • init在为我修复后再次显式设置类别。

    Scoreobject.category = category
    

    同样为了显示正确的排行榜,我也设置了类别。

    leaderboardobject.category = @"mycategory";
    

    1)请检查您是否正确拼写了类别。 令人惊讶的是,即使我的拼写错误,我也没有收到错误信息。 纠正错字纠正了我的问题。

    2)在展示GKLeaderboardViewController之前,请检查您是否设置了正确的排行榜? 正确设置如下:

    GKLeaderboardViewController *leaderboardViewController = [[[GKLeaderboardViewController alloc] init] autorelease];
    leaderboardViewController.category = @"yourcategoryname";
    [youviewcontroller presentModalViewController:leaderboardViewController animated: YES];
    
    链接地址: http://www.djcxy.com/p/53103.html

    上一篇: sandbox leaderboard empty

    下一篇: UDP broadcasting for LAN computer discovery & server setup