Manipulando a autenticação do Game Center

De acordo comDocs da apple devemos fazer algo assim para lidar com a autenticação do GC:

- (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");

            }
        })];

    }
}

E nós recebemos esta informação:

Se o dispositivo não tiver um reprodutor autenticado, o Game Kit passa um controlador de visualização ao seu manipulador autenticado. Quando apresentado, este controlador de exibição exibe a interface do usuário de autenticação. Seu jogo deve pausar outras atividades que exijam interação com o usuário (como o loop do jogo), apresentar esse controlador de visualização e depois retornar. Quando o jogador termina de interagir com ele, o controlador de exibição é descartado automaticamente.

Minha pergunta é: como sabemos quando esse controlador de exibição é descartado e como sabemos se a autenticação foi bem-sucedida ou não?

Obviamente, eu preciso saber se a autenticação funcionou ou não, e eu preciso saber quando retomar o jogo se eu tivesse que pausá-lo porque o controlador mágico de exibição de GC foi apresentado.

questionAnswers(4)

yourAnswerToTheQuestion