Game Center 対応のゲームを開発しているのですが、サンドボックス環境で問題が発生しています。スコアはエラーなく正常に報告できます。しかし、リーダーボードを表示すると、スコアが表示されません。スコアが実際にそこに表示されたことを確認するために、次のコードを使用してローカル ユーザーのスコアを照会します。
-(void)retrieveLocalScoreForCategory:(NSString *)category
{
GKLeaderboard *leaderboardRequest = [[GKLeaderboard alloc] init];
leaderboardRequest.category = category;
[leaderboardRequest loadScoresWithCompletionHandler: ^(NSArray *scores,NSError *error)
{
[self callDelegateOnMainThread: @selector(localPlayerScore:error:) withArg: leaderboardRequest.localPlayerScore error: error];
}];
}
私のデリゲートでは、スコアをコンソールに記録し、正しいスコアがそこに記録されていることを確認できます。正しいリーダーボード カテゴリ ID (1 つだけあります) を使用してリーダーボードを表示していることはすでに確認済みです。
サンドボックス環境のリーダーボードに自分のスコアがすぐに表示されない理由を知っている人はいますか? スコアが表示されるまでに遅延がありますか?
ベストアンサー1
私がこれまで取り組んできたプロジェクトでも同じ問題に遭遇しました。
GC リーダーボード (サンドボックス/ライブ) は、リーダーボードに 2 人以上のプレイヤーがいる場合にのみスコアを返します。
したがって、スコアを送信する場合は、1 台のデバイスで 2 つの異なるアカウントを使用するか、別のデバイスで 2 つの異なるアカウントを使用するようにしてください。