[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 |
関連記事
-
-
Apple Developer Program更新2019
今年も更新。税別 11800円だった。 2009年から継続しているようだ。もう11回
-
-
やはり新touchは待ちか…
今年のiPodイベントは、超びっくりは無かったけれどもまずまずみんな満足したのだろうか。 自分はカメ
-
-
おんぷちゃん for iPad 1.3.3 Submit
今回は紅白歌合戦を見ながらSubmit。 相変わらずうちの娘が譜読みに苦労していて新しい曲を弾く
-
-
ParentalGate修正
いくつか数年前に作ってアップデートしていなかったアプリたちに関して、更新しないとApp Storeか
-
-
[iOS SDK本] Beginning iOS 5 Games Development
久しぶりにApress本を購入。 Beginning iOS 5 Games Developmen
-
-
iPhone Dev Center が We’ll be back soon.
iPhone Dev Centerが昨日からずっとメンテナンス中。もうすぐ1日経つと思うけどいつま
-
-
View-Based Application に UINavigationController を追加する方法その2
今回はSkitchを使ってキャプチャ画像を貼ってみた。キャプチャだとコードがコピペできないが...
-
-
薄い iPod touch 4G用ケース SwitchEasy NUDE for iPod touch 4G UltraClear (SW-NUT4-UC) 購入
Retinaディスプレイと、ジャイロの確認のために購入したiPod touch 4G は開発用なので
-
-
英辞郎第7版からアルクのSVLを EverLearn に取り込む方法
英辞郎 第七版(辞書データVer.136/2013年1月8日版)アルク企画開発部 アルク 2013
-
-
[iTunes Connect] Price End Date には安売りの終わる次の日を入れるべき
App Store では、ランキングに現れないアプリは存在しないも同然、という話がある。 App