在IOS中,如何在Google Play游戏SDK中获得排行榜排名?

时间:2014-07-24 14:59:56

标签: ios objective-c google-play-games

我的英语很短。我将Google Play游戏附加到iPhone5。除了排行榜排名,一切都很好。当我试图从排行榜获得排名时,它总是返回零。  以下是我的代码。什么问题?

- (void)viewDidLoad {
    [super viewDidLoad];
    [GPGManager sharedInstance].statusDelegate = self;  
}

- (IBAction)signInWasClicked:(id)sender {
    [[GPGManager sharedInstance] signInWithClientID:CLIENT_ID silently:NO]; 
}

- (IBAction)submitScore: (UIButton *)sender { 
    GPGScore* myScore = [[GPGScore alloc] initWithLeaderboardId:LEADERBOARD_ID];
    [myScore submitScoreWithCompletionHandler:^(GPGScoreReport *report, NSError *error){
        if (error) {
            // error
            NSLog(@"ERROR");
        } else {
            // Success. Score retern fine. score return right value but rank is not.
            NSLog(@"%@, %lld", report.highScoreForLocalPlayerAllTime.formattedScore,
            report.highScoreForLocalPlayerAllTime.rank);
        }
    }]; 
}

在Google开发者的“Leaderboard in iOS”部分中,没有提及排行榜排名。但是在GPGScoreReport对象中,有GPGScore对象,在GPGScore对象中,得分和排名值都在其上。  请帮帮我。

1 个答案:

答案 0 :(得分:0)

GPGLeaderboard *myLeaderboard = [GPGLeaderboard leaderboardWithId:LEADERBOARD_ID];
myLeaderboard.timeScope = GPGLeaderboardTimeScopeAllTime;

GPGLocalPlayerScore* localScore = [myLeaderboard localPlayerScore];
GPGLocalPlayerRank* localRank = [localScore publicRank];

NSLog(@"Current rank : %@", localRank.formattedRank);

我没有尝试这个代码,但根据类引用,它应该可以正常工作。让我知道它是否有效。

此外,将该代码“提交”后提交。