objective-c - GameCenter 显示 "Missed Method"并且不报告分数

标签 objective-c xcode game-center

我一直在一些类似的线程中寻找答案,但找不到适合我的问题的答案。

我在 viewDidLoad 中有这个

self.currentLeaderBoard = [leaderboards objectForKey:[defaults objectForKey:@"Level"]];

if ([GameCenterManager isGameCenterAvailable]) {

    self.gameCenterManager= [[GameCenterManager alloc] init];
    [self.gameCenterManager setDelegate: self];
    [self.gameCenterManager authenticateLocalUser];

} else {

    NSLog(@"Current device doesn't support GameCenter");

}

我尝试以这种方式发送分数:

NSLog(@"Category %@", self.currentLeaderBoard);

[self.gameCenterManager reportScore: 20 forCategory: self.currentLeaderBoard];
[self.gameCenterManager reloadHighScoresForCategory: self.currentLeaderBoard];

我还添加了这个来修复,但没有帮助:

- (void) processGameCenterAuth: (NSError*) error
{
    if(error == NULL)
    {
        [self.gameCenterManager reloadHighScoresForCategory: self.currentLeaderBoard];
        NSLog(@"GAMECENTER OK");
    }
    else
    {
        UIAlertView* alert= [[UIAlertView alloc] initWithTitle: @"Game Center Account Required" 
                                                        message: [NSString stringWithFormat: @"Reason: %@", [error localizedDescription]]
                                                       delegate: self cancelButtonTitle: @"Try Again..." otherButtonTitles: NULL];
        [alert show];
    }

}

但是效果总是一样的:

2012-04-15 11:34:31.987 Colors[40146:1bb03] authenticateWithCompletionHandler: enter
2012-04-15 11:34:32.009 Colors[40146:1bb03] authenticateWithCompletionHandler: exit
2012-04-15 11:34:32.010 Colors[40146:1bb03] NORMAL MODE
2012-04-15 11:34:33.163 Colors[40146:1bb03] GAMECENTER OK
2012-04-15 11:34:33.368 Colors[40146:1bb03] Missed Method
2012-04-15 11:34:33.773 Colors[40146:1bb03] Category 2
2012-04-15 11:34:33.851 Colors[40146:1bb03] Missed Method
2012-04-15 11:34:33.989 Colors[40146:1bb03] Missed Method

正如您所看到的,它在应用程序工作开始时以及当我尝试报告分数时显示“错过了方法”。它根本不报告分数(我在模拟器上尝试过使用 2 个不同的帐户)- GC 中没有显示任何内容。 当然,我检查了 iTunes Connect 中的类别是否设置正确,看起来确实如此。 http://cl.ly/183a2A2p1M0A2k2c3U2B

请告诉我我做错了什么以及如何解决它......谢谢!

最佳答案

我已经遇到了同样的问题。错过方法并不是一个大问题,您可以忽略它。

问题可能来自:

  • 你的模拟器版本,如果你有5.1也许你应该尝试4.3它可以让你的分数神奇地出现x)。
  • 如果您的排行榜中只有一名用户,则该排行榜基本上不会显示,请尝试制作多个帐户报告分数。

祝你好运

关于objective-c - GameCenter 显示 "Missed Method"并且不报告分数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10160967/

相关文章:

iOS : Issue in submitting app to appStore/adhoc deployment

xcode - 无法在 Ad Hoc 配置文件到期前续订,因为没有与证书 ID 匹配的证书

ios - didSelectRowAtIndexPath 不起作用,Swift 3

ios - 要通过Game Center向其他玩家发送短信聊天消息吗?

objective-c - 检查GKScore实例是否具有上下文属性

ios - 带有小页面的 UIPageViewController

ios - WKWebView 约束不起作用

objective-c - 复制单例实例以存储在数组中

ios - 多帐户游戏的Game Center成就行为

objective-c - 在 NSTextView 中捕获关键事件的最佳方式?