[iOS SDK] Game Center の Leaderboard 機能を利用してみた
自分で作っている英単語学習アプリを自分でひたすらテストをしているのだけれども、実際やってみるとなかなか毎日継続して学習させるのは難しい。
何かアプリを起動するモチベーションを用意したいということで、これまで利用したことがなかったGame CenterのLeaderboard機能を試しに使ってみることにした。
昔Game Centerが出たての頃に試してみたときには面倒そうであまりひかれない機能だったのだけれども、今は情報が揃っていてLeaderboardを使うくらいであればあっという間に実現できてしまった。
Game Center のリーダーボード(スコアランキング)対応アプリの作り方 – Over&Out その後
や
iPhoneアプリをGameCenterのLeaderboard(ランキング)に対応させる方法 | PLUS
を参考にした。
しかし、試しているうちになぜかアプリをアクティブにしただけでLeaderboardが表示されてしまうようになってしまった。
GKLocalPlayer *localPlayer = [GKLocalPlayer localPlayer];
if(localPlayer) {
[localPlayer authenticateWithCompletionHandler:^(NSError *error) {
if(error == nil) {
if(localPlayer.authenticated) { // GameCenter が利用可能
[self sendScoreToGameCenter];
GKLeaderboardViewController *leaderboardController = [[GKLeaderboardViewControlleralloc] init];
leaderboardController.leaderboardDelegate = self;
[self presentModalViewController:leaderboardController animated:YES];
}
} else { // GameCenter が利用できない
// alert を表示
}
}];
}
デバッガで調べていると、なぜかいきなり GKLocalPlayer の authenticateWithCompletionHandler のblock内の処理がいきなり呼び出されていることがわかった。
ということで
Deprecated GKLocalPlayer Methods
を読んでみたところ、このAPIを呼ぶとスレッドが走って、情報が得られた後にblock の処理が呼ばれるらしい。
ということで、バックグラウンドに入ったアプリをアクティブにするだけで、Leaderboardが表示されてしまっていた。
わかってしまえば簡単だけれども、この情報を他にWebで見た記憶がないのでメモとして残しておく。
しかしGame Center は利用するのは簡単だけれども、Game Centerを利用しないユーザから見ると結構うざい機能だ。
Game Centerの「○○さんお帰りなさい」を出さないよう設定する方法はありますか? | よくあるiPhoneの質問 | 教えて!AppBank
など、無効にしたいというコメントを大量に見つけることが出来た。
とりあえず利用するけれども、不評だったら機能を削除したりしようと思う。
書籍としては、この前BOOKSCANでスキャンした下記の本が役に立った。
| 詳解iOS5プログラミング | |
![]() |
沼田 哲史
秀和システム 2011-12 |
関連記事
-
-
[おんぷちゃん] おんぷちゃん for iPad ver.1.2 鍵盤に音名を表示
かなり久しぶりにおんぷちゃん for iPad を更新。今回でバージョン1.2になります。 おんぷち
-
-
[iOS SDK] WatchKitでできることできないこと 2015年3月
Apple Watch発売日(2015年4月24日)までに自作アプリの WatchKit対応
-
-
iPhone/Androidアプリで週末起業(山崎潤一郎著) を読んでみた。
前著を読んで、ちょっと楽観的に書きすぎていると思ったけれどもとりあえず最新版が出たので読んでみた。
-
-
iPhoneアプリネットワーク+GPSプログラミング 橋本佳幸
去年12月に読んで、途中まで感想を書いてそのままにしていた。ネットワーク関連の実用的なコードが多くて
-
-
EverLearn 1.9.0 に音声認識機能を追加しました
EverLearn 1.9.0 にて音声認識機能を追加しました。ホーム画面から、マイクボタンを押して
-
-
Corona SDK を試してみた
どうやら結構いまさらなようだが、Corona SDK を試してみた。 Corona SDK は同じソ
-
-
[iOS開発本] よくわかる Auto Layout
あまりにも Auto Layout がわかりにくいので、業を煮やして開発本を買ってしまった。「よくわ
-
-
[iPhone SDK] 処理中の表示に便利 MBProgressHUD
今作っている位置情報通知アプリで、送信にそれなりに時間がかかるので、送信中には単なるUIActivi
-
-
Apple Event 2021.04
今回はちょっと驚いた。最近リークが少なくて良き。もしくは自分がSNSから離れているのもある
-
-
アップルのタブレット端末に関するEngadgetのおもろい記事
Engadgetはごくたまに笑いのつぼにヒットするが今回のは面白かった。 ジョブズはタブレット端末に
