2011-04-05 2 views
0

글쎄, 나는 이미 리더 보드와 업적을 테스트 목적으로 등록했다. GameCenterManager.h/.m 및 AppScoreValue.h를 사용합니다.GameCenter에 도전 과제 보내기 문제!

내 순위표는 정상적으로 작동하며 모든 점수를 받고 순서대로 정렬하지만 플레이어에게 업적을 부여하지 않습니다.

나는 성과를보고하는 방법을 보여주는 예를 싶습니다, 나는이 시도 :

여기
-(void)viewDidLoad{ 
    [GKAchievement loadAchievementsWithCompletionHandler:^(NSArray *achievements, NSError *error) { 
    if (error != nil) 
    { 
     NSLog(@"ACHIEVEMENTS WERE NOT LOADED"); 
    } else { 
     NSLog(@"ACHIEVEMENTS WERE LOADED"); 
    } 

    if (achievements != nil) 
    { 
     NSLog(@"THERE ARE ACHIVEMENTS"); 
    } else { 
     NSLog(@"THERE ARE NO ACHIVEMENTS %@", achievements); 
    } 
}]; 

것은 내 업적보고 있어요 방법 :

- (IBAction)reportAchievementIdentifier:(NSString*)identifier percentComplete:(float) percent {  
    GKAchievement *achievement = [[[GKAchievement alloc] initWithIdentifier: identifier] autorelease]; 
    if (achievement) 
    { 
     achievement.percentComplete = percent; 
     [achievement reportAchievementWithCompletionHandler:^(NSError *error) 
     { 
      if (error != nil) 
      { 
       // Retain the achievement object and try again later (not shown). 
      } 
     }]; 
    } 

내보기는 부하 방법은 다음과 같습니다했다

+0

StackOverflow에 오신 것을 환영합니다! 점수를 어디에서보고하고 있습니까? 나는 당신이 어디서나 그 방법을 부르는 것을 보지 못합니다. – Moshe

+0

어떻게해야합니까? 나는이 코드로 정말 길을 잃었다. – Felipe

답변

1

성취도를 신고하면 li KE이 : ​​

[self reportAchievementIdentifier:@"com.yourapp.yourachievement" percentComplete:100.0]; 

는 (당신은 당신의 게임 센터 식별자에 사용 무엇 이건 식별자를 교체합니다.) 내가 애플에서 this documentation보고 제안

. 앱에 성취도를 사용하는 방법에 대한 본격적인 튜토리얼이 포함되어 있습니다.

기본 아이디어는 사용자가 업적을 완료 한 비율을 앱이보고한다는 것입니다. 업적이 항상 즉시 전파되는 것은 아닙니다.

1
GKAchievement *achievement = 
    [[GKAchievement alloc] initWithIdentifier: identifier]; 
achievement.showsCompletionBanner = YES; 

그게 전부 야!