で使用する場合Group Leaderboard
、Game Center
アプリで列挙された ID で「grp」プレフィックスを使用する必要がありますか?
つまり、既存のゲームを使用するように設定する場合Group Leaderboard
、アプリの各 ID に「grp」プレフィックスを追加する必要がありますか?
4 に答える
わかりました、それは動作します。アプリケーションに変更を加えることなく、既存のリーダーボードをグループに移動できます。
NDA を破らないことを願っていますが、このリンクを除いて、それに関する情報は見つかりませんでした - http://david-smith.org/blog/2012/06/18/ios-6-nda-cheatsheet/
あなたの質問を間違って読んでいた場合は申し訳ありません。しかし、答えはイエスだと思います。
私は自分のゲームでグループ リーダーボードを使用しており、スコアを提出しています。
#define LeaderboardID @"grp.yourleaderboardname"
GKScore *scoreReporter = [[GKScore alloc] initWithCategory:LeaderboardID];
scoreReporter.value = yourscore;
[scoreReporter reportScoreWithCompletionHandler:^(NSError *error) {
if (error != nil) {
NSLog(@"%@", error);
} else {
NSLog(@"%@", @"Success submitting score");
}
}];
[scoreReporter release];
グループリーダーボードを使用しなかった以前のゲームでは、LeaderboardID がそのように定義されていました。
#define LeaderboardID @"com.yourcomapny.yourgame.yourleaderboardname"
そのため、ID を変更して grp プレフィックスを含める必要があると思います。
答えは「はい」です。「grp」に変更する必要があります。プレフィックス。ザケージが答えを見つけた理由を考えた理由は次のとおりです。
たとえば、単一のリーダーボードをグループに入れると、その単一のリーダーボードは引き続き存在します。元のカテゴリ ID でスコアを報告し続ける場合は、「グループ」を使用して、元の単一のリーダーボードにスコアを追加します。プレフィックスはそれらを新しいグループ化されたものに追加します。これは本質的にあなたがしたいことです。つまり、リーダーボードをグループに入れると、2 つのリーダーボードができ、それぞれが独自のカテゴリ ID で更新されます。
したがって、元のカテゴリ ID は引き続き機能するように見えるかもしれませんが、古い単一のリーダーボードを見ていることになります。これが、古いカテゴリ ID がスコアを更新する場合と更新しない場合があることに気付く理由です。
これを理解するのにかなりの時間がかかりましたが、Apple iTunes Connect サポートはそのように説明しており、理にかなっています。ゲームを更新しないプレイヤーは、引き続き古いリーダーボードにスコアを報告し、ゲーム センターで確認できます。後で更新すると、開発者がリーダーボードをグループに追加したときのハイスコアが以前のものであることに驚くかもしれません。
このドキュメントは、Game Center の実装を計画する際に非常に役立ちます: https://developer.apple.com/library/ios/documentation/LanguagesUtilities/Conceptual/iTunesConnectGameCenter_Guide/iTunesConnectGameCenter_Guide.pdf