Могу ли я узнать имя пользователя GameCenter, который активно вошел в систему? - PullRequest
4 голосов
/ 07 мая 2011

Мне бы хотелось, чтобы приложение iphone предварительно заполняло некоторые поля после входа пользователя в gamecenter.В частности, имя пользователя!

У меня есть полный вход в систему, а также список лидеров и все достижения - я просто не могу понять, как получить доступ к свойству имени пользователя в любом месте.

Любой совет / помощь будет принята с благодарностью.

Спасибо, Коля PS - Это мой первый вопрос.Пожалуйста, будьте хороши: -)

Вот код, который я пытаюсь:

if ([GameCenterManager isGameCenterAvailable]) {

    self.gameCenterManager = [[[GameCenterManager alloc] init] autorelease];
    [self.gameCenterManager setDelegate:self];
    [self.gameCenterManager authenticateLocalUser];

    NSLog(@"User alias: %@",[[GKLocalPlayer localPlayer]alias]);

Но NSLog выдает «Псевдоним пользователя: (ноль)»?

1 Ответ

9 голосов
/ 07 мая 2011

Поскольку локальный игрок является подклассом GKPlayer, вы можете использовать это:

[[GKLocalPlayer localPlayer]alias]

Оу ... вы не авторизовали пользователя ... Это первый шаг ..

 GKLocalPlayer *localPlayer = [GKLocalPlayer localPlayer];
[localPlayer authenticateWithCompletionHandler:^(NSError *error) {
     if (localPlayer.isAuthenticated)
     {
         // Perform additional tasks for the authenticated player.
     }
 }];

Я думаю, вы можете просто заменить 3 строки кодов кодом выше .. Должно работать ..

...