[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 |
関連記事
-
Xcode6 を使うために強制的に Mavericks にアップグレードさせられたら重い
Mavericks の不具合をさけるためにわざわざ Mountain Lion (10.
-
iPhone アプリアイコン
iphoneアプリで稼げるのか さんと同様、自分もアイコンを作るのはつらい。 今度アプリを公開すると
-
iPhone から au 公式スパムメールを止める
hotinfo@himail.ezweb.ne.jp からau公式スパムが何度も届くので、重い腰を上
-
iPhoneゲーム開発ワークショップ 翔泳社 PJ Cabrera
以前紹介した、iPhone Games Projects の翻訳本「iPhoneゲーム開発ワークショ
-
[iPhone SDK] sqlite 学習中。FMDB を知る。
SQLite入門 第2版西沢 直木 翔泳社 2009-05-19売り上げランキング : 17582
-
Kickstarter で iPhone/Android で使える腕時計 Pebble に出資してみた
Kickstarter で28時間で100万ドルを調達したという Pebble E-Pape
-
リズムくんHD 1.2.1 で iOS11に対応しました
iPad用のリズムくんHD のiOS11対応が遅れてしまったため、2017年11月あたりからiOS1
-
自作アプリを売り買いできる Apptopia
Apptopia というところからメールが来たので調べてみたところ、どうやらAndroid
-
EverLearn 1.7.2 を公開しました
英単語学習用アプリ EverLearn 1.7.2 を公開しました (2015/10/22)TOEF
-
App Storeでのアプリ最低価格が突然115円から85円に 2011/07/14
App Storeでのアプリ最低価格が突然日本時間2011/07/14(木)未明に115円から85円