игровой центр не работает на ipod / iphone - PullRequest
0 голосов
/ 18 января 2011

Привет всем Работа над универсальной сборкой для приложения iphone / ipod / ipad.Я пытался заставить игровой центр работать в этом приложении.Теперь у меня есть игровой центр, работающий на ipad, но по какой-то причине он все еще не работает на ipod / iphone, и я понятия не имею, почему.

highScoreVC=[[UIViewController alloc] init];

    GKLeaderboardViewController *leaderboardController = [[[GKLeaderboardViewController alloc] init] autorelease];
    if (leaderboardController != nil)
    {
        leaderboardController.leaderboardDelegate = self;
        [[[CCDirector sharedDirector] openGLView] addSubview:highScoreVC.view];
        [highScoreVC presentModalViewController:leaderboardController animated: YES];
    }

это мой код для отображения таблицы лидеров, и он делаетработать каждый раз для Ipad, но, как я уже сказал, не для других устройств.код по-прежнему вызывается так же, как для Ipad, поэтому я понятия не имею, почему он не отображается.есть идеи, почему это будет?веселит

Ответы [ 3 ]

0 голосов
/ 18 января 2011

Я подозреваю, что могут быть некоторые проблемы с отображением элементов UIKit для Game Center, если они отлично работают на iPad, но не на iPhone / iPod. У меня возникли похожие проблемы при преобразовании приложения в универсальное.

Если вы создаете новый автономный проект iPhone / iPod только для тестирования, нормально ли отображается игровой центр?

0 голосов
/ 19 января 2011

хорошо, я получил это работает в конце.Cocos2d 0.99.5 действительно внес некоторые изменения в то, как это работает.следующий код отображает таблицу лидеров правильно

-(UIViewController*) getRootViewController{
return (UIViewController*)([(BubbleDreamsAppDelegate*) [[UIApplication sharedApplication] delegate] viewController]);

}

, а затем

highScoreVC = [self getRootViewController];


    GKLeaderboardViewController *leaderboardController = [[[GKLeaderboardViewController alloc] init] autorelease];

    if (leaderboardController != nil)
    {
        leaderboardController.leaderboardDelegate = self;

        [highScoreVC presentModalViewController:leaderboardController animated: YES];


    }

надеюсь, что это поможет любому, кто застрянет с той же проблемой

0 голосов
/ 18 января 2011

Насколько мне известно, [GKLeaderboardViewController init] вернет nil, если к этому моменту устройство не аутентифицировано в Game Center.Вы уверены, что правильно прошли аутентификацию на устройствах, вызывающих проблемы?

...