iOSアプリにGoogle Analytics SDK for iOS v3 を組み込んでKPI測定してみる
アプリをリリースしてみて、実際どんな感じで使われているのか、、、
ってかホントに使われてるのか、、、
気になってアプリにログを仕込むことにしました。
パッと探してみてGoogle Analyticsのを使うことにしました。
- ユーザがいま何人利用しているか
- どの地域で利用されているか
- どの時間帯で何分くらい使っているのか
などなど、アプリの改善に役立ちそうなKPIがザクザク取得できます。
以下、組み込みの手順です。
Google本家のドキュメントとほぼ同じ、王道的な組み込み方法です。
Google Analyticsのアカウントを取得
http://www.google.com/analytics/ にアクセスしてアカウントを取得します。
今回はアプリの測定をするので”モバイルアプリ”を選びましょう。
アカウントが発行されたら、Tracking IDは後で使うので覚えておきましょう。
下記ページからiOS用のSDKをダウンロードして次のステップに進みます。
ヘッダファイルの設定
ファイルをXcodeにコピー
解凍したSDKのLibraryディレクトリにある以下のファイルを、XCodeのプロジェクトにコピーします。
GAI.h
GAITracker.h
GAITrackedViewController.h
GAIDictionaryBuilder.h
GAIFields.h
GAILogger.h
libGoogleAnalyticsServices.a
link library設定
link libraryの設定で以下のライブラリを追加します。
libGoogleAnalyticsServices.a
AdSupport.framework
CoreData.framework
SystemConfiguration.framework
libz.dylib
コーディング
さていざコーディングです。
初期化
AppDelegate.mのdidFinishLaunchingWithOptions()に初期化処理を追加します。
ヘッダのインポートも忘れずに。
UA-XXXX-Y の部分は先ほど取得したTracking IDを入れます。
/* AppDelegate.h */
#import "GAI.h"
/* AppDelegate.m */
-
(BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions { // Optional: automatically send uncaught exceptions to Google Analytics. [GAI sharedInstance].trackUncaughtExceptions = YES;
// Optional: set Google Analytics dispatch interval to e.g. 20 seconds. [GAI sharedInstance].dispatchInterval = 20;
// Optional: set Logger to VERBOSE for debug information. [[[GAI sharedInstance] logger] setLogLevel:kGAILogLevelVerbose];
// Initialize tracker. Replace with your tracking ID. [[GAI sharedInstance] trackerWithTrackingId:@"UA-XXXX-Y"];
}
Screen Measument(ページビューみたいな)のログ仕込み
ログを仕込みたい適当なUIViewControllerを編集します。
まず、UIViewController の代わりに GAITrackedViewController を継承するように変更します。
/* HomeViewController.h */
@interface HomeViewController : UIViewController
↓ こんな感じに変更
#import "GAITrackedViewController.h"
@interface HomeViewController : GAITrackedViewController
そしてViewWillAppearにログを仕込みます。
/* HomeViewController.m */
- (void)viewWillAppear:(BOOL)animated { [super viewWillAppear:animated]; self.screenName = @"About Screen"; //screenNameは適当に変更して }
いざ確認
さて実際にGoogle Analyticsにログが飛んでいるのを確認しましょう。
先程のログを仕込んだUIViewControllerを表示します。 Xcodeのコンソールログに GoogleAnalyticsなんとか、とかいうログが流れてるかと思います。
で、ブラウザでGoogleAnalyticsを見てみましょう。
おお!現在1人のアクティブユーザが利用してます。
とのこと。 自分のことですね ^^;
リアルタイム表示だと数十秒で反映されます。
他にもユーザの地域や使用してるアプリバージョンなど色々分析できます。
他にもボタンを押したイベントの取得など、いろんなタイミングでログを取得できます。
それについては後ほど。。。