7 Stimmen

Authentifizierung von GKLocalPlayer mit Game Center

Ich versuche, einen GKLocalPlayer mit Game Center zu authentifizieren. Der von Apple gelieferte Code ist jedoch

- (void) authenticateLocalPlayer
{
    [[GKLocalPlayer localPlayer] authenticateWithCompletionHandler:^(NSError *error) {
         if (error == nil)
         {
              // Insert code here to handle a successful authentication.
              NSLog(@"Logged in.");
         }
         else
         {
             // Your application can process the error parameter to report the error to the player.
             NSLog(@"%@", [error description]);
         }
     }];
}

scheint bei mir nicht zu funktionieren. Ich erhalte immer die Meldung "Could not connect to Game Center server." mit der Option "Retry" oder "Cancel". Keine der NSLog-Anweisungen wird ausgeführt, so dass ich vermute, dass der completionHandler nicht einmal abgefeuert wird.

Wenn ich auf "Retry" drücke, erhalte ich folgende Fehlermeldung:

Error Domain=GKErrorDomain Code=7 "The requested operation could not be completed because local player is already authenticating." UserInfo=0x8915f80 {NSLocalizedDescription=The requested operation could not be completed because local player is already authenticating.}

Hat jemand eine Idee, was da schief läuft?

7voto

Joseph Tura Punkte 6152

Ein mögliches Problem, das ich bei der Verbindung mit Game Center gefunden habe, ist, dass das Datum auf dem Gerät falsch sein könnte. Überprüfen Sie, ob Ihr Datum das aktuelle Datum ist. Irgendwie lässt Game Center keine Verbindungen von Geräten mit falschem Datum zu.

1voto

KudoKid Punkte 11

Sie können versuchen, den Simulator vollständig auf die Standardeinstellungen zurückzusetzen. Bei mir hat es funktioniert. Sobald er zurückgesetzt ist, funktioniert mein iDevice wieder.

Abhängig von der iOS-Version können Sie sich nicht einloggen, dann stellen Sie den Simulator in den Vordergrund und gehen Sie nach oben links. iOS Simulator -> Inhalt und Einstellungen zurücksetzen -> Klicken Sie auf die Schaltfläche Zurücksetzen.

Ich hoffe, das hilft.

0voto

Steve Mulligan Punkte 21

Ich habe genau dasselbe Problem. Gestern Morgen hat es bei mir in etwa 1 von 5 Fällen funktioniert. Heute konnte ich mich nicht ein einziges Mal bei der Game Center Sandbox anmelden (mit demselben Code, den Sie gepostet haben).

edit: Ich habe das Bereitstellungsziel auf 3.0 geändert "Projekt - Aktives Ziel bearbeiten - iOS Bereitstellungsziel"

Dann konnte ich den 4.1-Simulator als aktive ausführbare Datei auswählen, und ich kann mich anmelden und alles funktioniert. Ich schätze, das hat etwas mit der 4.2 Sandbox zu tun...

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X