9

当我使用Group LeaderboardinGame Center时,我需要在我的应用程序中枚举的 id 中使用“grp”前缀吗?
换句话说,如果我将设置我现有的游戏以使用Group Leaderboard我是否需要在我的应用程序中为每个 id 添加“grp”前缀?

4

4 回答 4

7

好的,它有效。您可以将现有排行榜移动到组,而无需在应用程序中执行任何更改。

希望我不要破坏 NDA,没有找到任何关于它的信息,除了这个链接 - http://david-smith.org/blog/2012/06/18/ios-6-nda-cheatsheet/

于 2012-08-22T08:56:02.937 回答
2

抱歉,如果我错误地阅读了您的问题。但我相信答案是肯定的。

我在我的游戏中使用了小组排行榜,并提交了这样的分数。

            #define LeaderboardID @"grp.yourleaderboardname"

            GKScore *scoreReporter = [[GKScore alloc] initWithCategory:LeaderboardID];
            scoreReporter.value = yourscore;
            [scoreReporter reportScoreWithCompletionHandler:^(NSError *error) {
                if (error != nil) {  
                     NSLog(@"%@", error);
                } else {
                     NSLog(@"%@", @"Success submitting score");
                }
            }];
            [scoreReporter release]; 

以前没有使用组排行榜的游戏我的 LeaderboardID 就是这样定义的。

#define LeaderboardID @"com.yourcomapny.yourgame.yourleaderboardname"

所以我相信您确实必须更改您的 id 以包含 grp 前缀。

于 2012-07-26T18:45:49.183 回答
1

答案是肯定的,您确实必须更改为“grp”。字首。这就是 zakhej 可能认为他找到答案的原因:

例如,当您将单个排行榜放入一个组时,该单个排行榜将继续存在。如果您继续使用原始类别 ID 报告分数,您会将它们添加到原始单个排行榜,同时使用“grp.”。前缀会将它们添加到新的分组中,这本质上是您想要做的。简而言之,将排行榜放在一个组中将导致有两个排行榜,每个排行榜都使用自己的类别 ID 进行更新。

因此,看起来原来的类别 ID 将继续有效,但您正在查看旧的单一排行榜。这就是为什么您可能会注意到有时旧的类别 ID 会更新分数,而有时却不会。

解决这个问题花了相当长的时间,但 Apple iTunes Connect 支持以这种方式解释它并且说得通。不更新游戏的玩家将继续向旧排行榜报告分数,并将在游戏中心看到。当他们稍后更新时,他们可能会惊讶地发现他们的高分是您(开发人员)将该排行榜添加到组时的前一个。

本文档对规划 Game Center 实施非常有帮助:https ://developer.apple.com/library/ios/documentation/LanguagesUtilities/Conceptual/iTunesConnectGameCenter_Guide/iTunesConnectGameCenter_Guide.pdf

于 2014-01-16T21:34:10.280 回答
0

这个问题有两个不同且相反的答案,所以我想我会表达我自己的经历:

TL;DR 不要添加grp.前缀。

  • 在应用程序上有排行榜,没有 Game Center Group。该应用程序已上线
  • 用于GKGameCenterViewController显示最高分数效果很好
  • 当应用程序上线时,我创建了一个新的 Game Center Group 并将其添加到其中
  • 将排行榜 ID 更改为具有组上显示的新 ID,即带有grp.前缀
  • 我能够将分数发布到排行榜,但是在启动时GKGameCenterViewController它没有在我实例化它的排行榜上打开,它只在仪表板上打开,好像它不再识别 ID。
  • 将排行榜 id 改回原来的(不带grp.),现在我可以再次发布分数,并按GKGameCenterViewController预期使用。

结论:您可以将id更改为新的,grp.是否可以发布分数,结果是一样的,但GKGameCenterViewController只有在您使用原始id时才有效。

于 2021-04-22T08:48:14.173 回答