2014-11-30 1 views
0

, 나는 GameKit 사용하여 플레이어를 인증하기 위해 내 스프라이트 키트 프로젝트에 뷰 컨트롤러에 다음 코드를 사용게임 센터에서 TestFlight 사용자에게 로그인을 요청하지 않습니까? 내 응용 프로그램에서

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

    localPlayer.authenticateHandler = ^(UIViewController *viewController, NSError *error){ 
     if (error != nil){ 
      NSLog(@"%@", [error localizedDescription]); 
     } 
     if (viewController != nil){ 
      [self presentViewController:viewController animated:YES completion:nil]; 
     }else{ 
      if ([GKLocalPlayer localPlayer].authenticated){ 
       _gameCenterEnabled = YES; 
       [[GKLocalPlayer localPlayer]loadDefaultLeaderboardIdentifierWithCompletionHandler:^(NSString *leaderboardIdentifier, NSError *error) { 
        if (error != nil){ 
         NSLog(@"%@", [error localizedDescription]); 
        } 
        else{ 
         _leaderboardIdentifier = leaderboardIdentifier; 
        } 
       }]; 

      } 
      else{ 
       _gameCenterEnabled = NO; 
       NSLog(@"game center not available"); 
      } 
     } 
    }; 
} 

그것은 내 휴대 전화에서 잘 작동을하지만, 임시 빌드를 구축 한 후 프로비저닝 프로파일은 친구의 전화가 어떻게 작동 하는지를 보여주기 위해 앱을 열었을 때 로그인을 요구하지 않았고, 내 전화기는 (그리고 모든 시뮬레이터 폰이) 있었다.

리더 보드를 열려고하면 "게임 센터를 사용할 수 없거나 사용자가 로그인하지 않았습니다"또는 이와 비슷한 메시지 만 표시됩니다.

친구의 휴대 전화의 게임 센터 설정으로 이동하여 샌드 박스 모드가 켜져 있는지 확인했습니다. 그 후 iTunes 연결에서 만든 샌드 박스 테스터 계정에 수동으로 로그인하고 다시 (내 전화에서) 내 앱을 열면 "다시 돌아 오신 것을 환영합니다"라는 메시지가 표시되었습니다. 그러나 스코어 보드에 점수가 있어야한다고 생각하면 리더 보드에 "점수 없음"이 표시됩니다.

내 질문은 :

는 는

1. 왜 로그인을 요구하지 않았다? 내 코드에 문제가 있습니까? 아니면 샌드 박스 모드로 베타 테스트를 수행 할 때 어떻게 작동할까요?

2. 왜 다른 점수를 나타내지 않습니까? 내 리더 보드가 iTunes에 연결되어 있고 리더 보드 이름이 앱에 올바르게 표시되어 있지만 점수가 표시되지 않습니다.

어떤 도움을 주셔서 감사합니다!

답변

0

다른 사용자의 점수가 업데이트되기까지는 약 10 시간이 소요됩니다. 현재 모든 테스트 사용자의 점수는 게임 센터에 있습니다. 이것이 더 분명 해지면 좋을 것입니다. 그래서 개발자들은 Game Center가 작동하지 않는다고 생각하지 않았습니다.

+0

동일한 문제가 있습니다. 내 사용자 중 누구에게도 질문하지 않습니다. 하지만 나는 지난 20 일 베타 테스트 중입니다. 샌드 박스 테스터 스위치를 점검해야합니까? 나 진짜 혼란 스럽다. 내가 샌드 박스로 테스트 한 모든 사용자가 목록에 있습니다. 이 문제에 대해 좀 더 밝힐 수 있습니까? 감사. – Alix