Функция для обработки, когда пользователь решает отменить вход в Game Center? - PullRequest
2 голосов
/ 11 января 2011

Я занимаюсь разработкой игры для iPad.У меня такая ситуация.Если учетная запись игрового центра пользователя / игрока не зарегистрирована, появится окно с предупреждением, позволяющее игроку выбрать либо:

  1. Войти в существующую учетную запись

  2. Создать новую учетную запись

  3. Отмена

Меня интересует третий вариант («отмена»).Как обрабатывать или назначать функцию, когда пользователь нажимает опцию «отмена».Я попробовал это:

- (void) alertView:(UIAlertView *)actionSheet clickedButtonAtIndex:(NSInteger)buttonIndex {
    if(buttonIndex == 2){ 
        NSLog(@"Cancel called");
    ....

Но не работает.Есть ли другое решение?

Спасибо

1 Ответ

3 голосов
/ 22 февраля 2012

Возможно, это очень поздно, и больше никого не волнует, но способ справиться с этим - обработчик аутентификации в Game Center. В частности, если пользователь выберет «отмена», вы получите код GKErrorCancelled:

- (void) authenticate {

    GKLocalPlayer* localPlayer = [GKLocalPlayer localPlayer];
    [localPlayer authenticateWithCompletionHandler: ^(NSError *error) {

        if(error.code == GKErrorCancelled) {
            //this is the case you're interested in
        }

        if(localPlayer.authenticated) {
            //rock on
        }
    }];
}

Опять же, этот пост, вероятно, уже древняя история, но, надеюсь, это поможет в любом случае:)

...