[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 |
関連記事
-
-
[iPhone SDK] 処理を遅延実行する方法
処理を少し遅らせて実行したいときがたまにある。 そういうときには、NSObjectの - (voi
-
-
Apple Special Event 2011
2011年は iPhone 4s が発表された。 https://japanese.enga
-
-
アップルストア渋谷で発売日翌日にiPhone 5を買ってきた
2012年9月21日8時に発売されたiPhone5、自分はヨドバシカメラで予約したのだけれどもちょっ
-
-
Your application status is Ready for Sale
5/2にAppStoreにSubmitしたアプリに関して、Apple から Your applica
-
-
おすすめ iPhone5用ケース iJacket
iPhone5購入時に同時に購入したケース(写真上)が1ヶ月程度でかなりみすぼらしい状態
-
-
iPhoneアプリで週末起業
2009年7月に出た本なので、今となってはちょっと古いが、当時の熱気は感じられる。 iPhoneアプ
-
-
iPhone OS 3.0 インストール
OSのメジャーアップデートの機会は1年に一度だろう、ということで貴重な機会なのとbeta 5になりさ
-
-
Admob SDK が Google AdMob Ads SDK になっていた
かなり以前に作ったアプリをアップデートするにあたって、AdMobで謎のエラーが出ているので最新
-
-
おんぷちゃん for iPad 2.0.0リリース
あけましておめでとうございます。今年もよろしくお願いします。 2022年8月にはだいたい完成
-
-
unite スマートベース SmartBase for iPhone
しばらく前に買って愛用していて、今回もう1台買ったので紹介。iPhone 3G/3GS用と、
