Google Analytics SDK for iOS V2(バージョン2)のマクロを作ってみた
やぁ。鳥だ。
iOS向けのGoogle Analytics SDKの、バージョン2のベータ版が出たわけさ。
何が嬉しいって、専門になってアプリ、OSのバージョンのトラッキングをしてくれるようになったわけさ〜。
それに、ソーシャルやら色々とトラッキングできるよーになったっ
Androidに限って言えば、Playストアからのアクセスも見られちゃう。
ちなみにバージョン1のほうは過去の記事を参照してねん。
で、一式マクロを作ってみたよ。
最初に呼び出す初期化マクロ。
PERIODは溜まったログをGoogle Alanyticsに吐き出す間隔ね。秒単位。
#ifdef DEBUG
#define GA_INIT_TRACKER(ACCOUNT, PERIOD) { \
[GAI sharedInstance].trackUncaughtExceptions = YES; \
[GAI sharedInstance].dispatchInterval = PERIOD; \
[GAI sharedInstance].debug = YES; \
id<GAITracker> tracker = [[GAI sharedInstance] trackerWithTrackingId:ACCOUNT]; \
tracker.useHttps = true; \
}
#else
#define GA_INIT_TRACKER(ACCOUNT, PERIOD) { \
[GAI sharedInstance].trackUncaughtExceptions = YES; \
[GAI sharedInstance].dispatchInterval = PERIOD; \
[GAI sharedInstance].debug = NO; \
id<GAITracker> tracker = [[GAI sharedInstance] trackerWithTrackingId:ACCOUNT]; \
tracker.useHttps = true; \
}
#endif
イベントをトラッキングするマクロ。
これはほぼバージョン1系と一緒。
#define GA_TRACK_EVENT(EVENT,ACTION,LABEL,VALUE) [[[GAI sharedInstance] defaultTracker] trackEventWithCategory:EVENT withAction:ACTION withLabel:LABEL withValue:VALUE];
ユーザーが何秒その画面に居たかを記録するマクロ。
TIMEで指定した秒数分いた場合に記録されるよっ
(居た時間が記録されるわけではない点に注意)
#define GA_TRACK_TIMING(CATEGORY,TIME,NAME,LABEL) [[[GAI sharedInstance] defaultTracker] trackTimingWithCategory:CATEGORY withValue:TIME withName:NAME withLabel:LABEL];
ソーシャルトラッキング。
現時点では記録が見れる画面は無いよ。
#define GA_TRACK_SOCIAL(NETWORK,ACTION,TARGET) [[[GAI sharedInstance] defaultTracker] trackSocial:NETWORK withAction:ACTION withTarget:TARGET];
クラスのトラッキング。呼びたい部分で「GA_TRACK_CLASS」って書く。
#define GA_TRACK_CLASS GA_TRACK_PAGE(NSStringFromClass([self class]));
メソッドのトラッキング。
呼びたいメソッドのどっかで「GA_TRACK_METHOD」と書く。
#define GA_TRACK_METHOD GA_TRACK_EVENT(NSStringFromClass([self class]), NSStringFromSelector(_cmd), @"", [[NSNumber alloc] initWithInt:-1]);
ページ(画面?Googleはスクリーンと呼んでる)のトラッキング。
呼びたいビューのviewDidLoadの最初とか最後とかで「GA_TRACK_PAGE(@"ページ名")」。
#define GA_TRACK_PAGE(PAGE) [[[GAI sharedInstance] defaultTracker] trackView:PAGE];
例外系が結構ややこしくなってるので省いてる。
また、EC向けの設定もあるけど、それはマクロにするとややこしくなるだけなので、本家を見てね〜。
本家: Google Analytics SDK for iOS v2 - Overview - Google Analytics - Google Developers
えぇ、難点としてはカスタム変数のトラッキングが無くなってるとこね。。
でわでわ。