Umgang mit der Game Center-Authentifizierung

LautApple-Dokumente Wir sollten so etwas tun, um die GC-Authentifizierung zu handhaben:

- (void) authenticateLocalUser
{
    GKLocalPlayer *localPlayer = [GKLocalPlayer localPlayer];

    if(localPlayer.authenticated == NO)
    {
        [localPlayer setAuthenticateHandler:(^(UIViewController* viewcontroller, NSError *error) {
            if (!error && viewcontroller)
            {
                DLog(@"Need to log in");
                AppDelegate *appDelegate = (AppDelegate*)[[UIApplication sharedApplication] delegate];
                [appDelegate.window.rootViewController presentViewController:viewcontroller animated:YES completion:nil];

            }
            else
            {
                DLog(@"Success");

            }
        })];

    }
}

Und wir erhalten diese Informationen:

Wenn das Gerät keinen authentifizierten Spieler hat, übergibt Game Kit einen Ansichts-Controller an Ihren Authentifizierungs-Handler. Bei der Anzeige zeigt dieser Ansichtscontroller die Authentifizierungsbenutzeroberfläche an. Ihr Spiel sollte andere Aktivitäten anhalten, die Benutzerinteraktion erfordern (z. B. Ihre Spieleschleife), diesen Ansichtscontroller anzeigen und dann zurückkehren. Wenn der Player mit der Interaktion fertig ist, wird der Ansichtscontroller automatisch geschlossen.

Meine Frage ist, woher wissen wir, wann dieser Ansichtscontroller entlassen wird, und woher wissen wir, ob die Authentifizierung erfolgreich war oder nicht?

Natürlich muss ich wissen, ob die Authentifizierung funktioniert hat oder nicht, und ich muss wissen, wann ich das Spiel fortsetzen muss, wenn ich es anhalten musste, weil der Magic GC View Controller vorgestellt wurde.

Antworten auf die Frage(4)

Ihre Antwort auf die Frage