[iOS SDK] Game Center の Leaderboard 機能を利用してみた

公開日: : iPad, iPhone

自分で作っている英単語学習アプリを自分でひたすらテストをしているのだけれども、実際やってみるとなかなか毎日継続して学習させるのは難しい。
何かアプリを起動するモチベーションを用意したいということで、これまで利用したことがなかったGame CenterのLeaderboard機能を試しに使ってみることにした。

昔Game Centerが出たての頃に試してみたときには面倒そうであまりひかれない機能だったのだけれども、今は情報が揃っていてLeaderboardを使うくらいであればあっという間に実現できてしまった。

Game Center のリーダーボード(スコアランキング)対応アプリの作り方 – Over&Out その後

iPhoneアプリをGameCenterのLeaderboard(ランキング)に対応させる方法 | PLUS
を参考にした。


しかし、試しているうちになぜかアプリをアクティブにしただけでLeaderboardが表示されてしまうようになってしまった。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
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プログラミング
詳解iOS5プログラミング 沼田 哲史

秀和システム 2011-12
売り上げランキング : 326673

Amazonで詳しく見る by G-Tools

関連記事

no image

iPhone Developer Program Activation 完了

iPhone Developer ProgramのActivationの件。 木曜日の夜にメールを出

記事を読む

Appleシリコン搭載Mac発表?

いつからか、下記の文言が App Store Connect で表示されるようになった。

記事を読む

no image

[iOS] iOS6 から起動時に一度 Portraitになる挙動が変更された模様

iOS6 からは画面の回転関係の仕様が整理されたのか、いろいろと変更が入っている。 まず - (B

記事を読む

no image

App Store のスクリーンショットの解像度がいつの間にか変更されている

2ヶ月ぶり位で App Store にアップデートをSubmitしようとしたところ、アップデート

記事を読む

no image

Corona SDK 調査4日目

今日はスクリプト言語による効率的ゲーム開発を読んで、ちょっとテストプログラムを書いたくらいであまり進

記事を読む

no image

[iPhone SDK] ネットワーク接続の有無を確認する方法

iPhoneでネットワーク接続できないときには一応エラーダイアログを出す方がよいだろうと考えて方法を

記事を読む

iPad 発売 2010/04/03

日本時間4/3 17:00あたりに、Appleから iPad is here. メールが来てい

記事を読む

no image

[iOS SDK] SSPieProgressView を使ってみた

iOS オープンソースライブラリ徹底活用 菊田剛著 秀和システム | DevCafeJp で紹介さ

記事を読む

[iOS10] NSPhotoLibraryUsageDescription

iOS10 になってから App Store にアプリのSubmitを行ったところ、アプリのアップロ

記事を読む

Apple Special Event 2013

2013年には下記が発表された。 iPhone 5siPhone 5cついにドコモでも発売

記事を読む

Message

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Ember Mug 2のACアダプタをUSB Type-Cに変えてみた

冬になると活躍する Ember Mug 2 の充電器は付属のACアダ

Wi-Fi6Eルータ TP-Link AXE5400購入

Wi-Fi6E を試してみたくなり、TP-Link AXE5

児童手当 認定請求書申請 2024 「請求者が養育をする18歳に達する日以降の最初の3月31日までの子の数」とは?

2024年に受給していない人には手紙が届くらしい。 電子申請も

Vision Proアプリ開発本 8/24、8/26に発売

Vision Proアプリ開発入門 P400が 8/24 に発売、V

Developer Strap が日本でも購入可能に

USアカウントでしか購入できなかった Vision Pro 用 De

→もっと見る

  • 2013年4月
    1234567
    891011121314
    15161718192021
    22232425262728
    2930  
S