iOS 6 Game Center Absturz bei Authentifizierung

Ich baue ein Spiel in Cocos2d-iPhone und als ich auf iOS 6 aktualisiert habe, habe ich festgestellt, dass Apple die Art und Weise geändert hat, wie die Game Center-Authentifizierung durchgeführt wirdauthenticateHandler anstattauthenticateWithCompletionHandler.

Ich habe die neue Authentifizierungsmethode hinzugefügt, aber das Spiel stürzt jetzt ab, wenn noch kein Spieler bei Game Center angemeldet ist. Es ist kein Problem, sich zu authentifizieren, wenn ein Benutzer bereits angemeldet ist.

Hier ist mein Code:

if(SYSTEM_VERSION_GREATER_THAN_OR_EQUAL_TO(@"6.0"))
{
    GKLocalPlayer *localPlayer = [GKLocalPlayer localPlayer];
    localPlayer.authenticateHandler = ^(UIViewController *viewController, NSError *error)
    {
        if (viewController != nil)
        {
            AppController *appDelegate = (AppController*)[UIApplication sharedApplication].delegate;

            [delegate.viewController presentViewController:viewController animated:YES completion:nil];
        }
        else if (localPlayer.isAuthenticated)
        {
            NSLog(@"Player authenticated");
        }
        else
        {
            NSLog(@"Player authentication failed");
        }
    };
}

Es scheint, als würde es abstürzen, wenn ich versuche, den Game Center viewController zu präsentieren, obwohl ich genau denselben Code verwende, um den zu präsentierenGKTurnBasedMatchmakerViewController ohne Probleme.

Jede Hilfe wäre sehr dankbar.

BEARBEITEN: Hier ist die Ausnahme, die beim Absturz ausgelöst wird:

Uncaught Exception UIApplicationInvalidInterfaceOrientation: Supported orientations has no common orientation with the application, and shouldAutorotate is returning YES

Antworten auf die Frage(2)

Ihre Antwort auf die Frage