Я создаю игру для iOS 7 и пытаюсь внедрить списки лидеров Game Center. Я получил приложение, чтобы открыть таблицу лидеров, когда я нажимаю определенную кнопку, но оно говорит «Нет элементов». Сейчас я не уверен, что это проблема с отправкой результатов или получением таблиц лидеров. Кажется, это проблема с отправкой результатов, потому что в верхней части моей таблицы лидеров указано название приложения, но я не могу найти свою ошибку. Мой код для отправки оценки:
-(void)reportScore:(NSInteger ) highScore {
if ([GKLocalPlayer localPlayer].isAuthenticated) {
GKScore *scoreReporter = [[GKScore alloc] initWithLeaderboardIdentifier:@"flapjacks1" forPlayer:[GKLocalPlayer localPlayer].playerID];
scoreReporter.value = highScore;
NSLog(@"Score reporter value: %@", scoreReporter);
[GKScore reportScores:@[scoreReporter] withCompletionHandler:^(NSError *error) {
if (error != nil) {
NSLog(@"Error");
// handle the reporting error
}
}];
}
}
Это мой метод получения таблицы лидеров:
-(void)displayLeaderboard
{
//NSString *_leaderboardIdentifier = @"flapjacks1";
[[GKLocalPlayer localPlayer] loadDefaultLeaderboardIdentifierWithCompletionHandler:^(NSString *leaderboardIdentifier, NSError *error) {
if (error != nil) {
NSLog(@"%@", [error localizedDescription]);
}
else{
//_leaderboardIdentifier = leaderboardIdentifier;
GKGameCenterViewController *gameCenterController = [[GKGameCenterViewController alloc] init];
if (gameCenterController != nil)
{
gameCenterController.gameCenterDelegate = self;
gameCenterController.viewState = GKGameCenterViewControllerStateLeaderboards;
//gameCenterController.leaderboardTimeScope = GKLeaderboardTimeScopeToday;
gameCenterController.leaderboardIdentifier = @"flapjacks1";
[self presentViewController: gameCenterController animated: YES completion:nil];
}
}
}];
}