最近はUnity Analyticsという選択肢もありますが、Googleアナリティクスを使いたいと思います。
どのライブラリを使うか
ライブラリが沢山あります。Googleアナリティクスの公式が配布しているものが間違いない、と思いきやBeta版です。
・https://developers.google.com/analytics/devguides/collection/unity/v3/devguide
・https://github.com/googleanalytics/google-analytics-plugin-for-unity
そして、これを用いた場合、xcodeでビルドする時にオプションの設定が煩雑です。
もっとお手軽に出来ないのか探したところ…
・https://github.com/Extrawurst/unity3d-google-analytics
これが使いやすかったです。
また、コードがWWWクラスを利用した実装なのでシンプルで改修も行いやすそうです。
iOS/Androidで動作の確認も取れました。
準備
1.空のGeme Objectを配置する
2.上記に対しAdd Component→Scripts→C google Analytics
3.Inspectorにて以下を設定
①Appname アプリ名を設定する(任意)
②Profile Id GoogleアナリティクスのトラッキングIDを設定する(UA-000000-00といった値)
③Appversion Googleアナリティクスに送信するアプリのバージョンを設定する
④Auto Connect ON・OFF(ONで動作確認しました)
コード例
以下のようにセッションの開始と終了、各種トラッキングを行います。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 |
<span style="font-family: Menlo;"><span style="color: #009695;">using</span><span style="color: #333333;"> UnityEngine</span><span style="color: #333333;">;</span> <span style="color: #009695;">using</span><span style="color: #333333;"> System</span><span style="color: #333333;">.</span><span style="color: #333333;">Collections</span><span style="color: #333333;">;</span> <span style="color: #009695;">public</span><span style="color: #333333;"> </span><span style="color: #009695;">class</span><span style="color: #333333;"> </span><span style="color: #3364a4;">SphereSample</span><span style="color: #333333;"> </span><span style="color: #333333;">:</span><span style="color: #333333;"> </span><span style="color: #3364a4;">MonoBehaviour</span><span style="color: #333333;"> </span><span style="color: #333333;">{</span> <span style="color: #333333;"> </span><span style="font-style: italic; color: #888888;">//</span><span > </span><span >3の項で作成したGame</span><span > Objectへの参照</span> <span style="color: #333333;"> </span><span style="color: #009695;">public</span><span style="color: #333333;"> </span><span style="color: #3364a4;">CGoogleAnalytics</span><span style="color: #333333;"> </span><span style="color: #333333;">ga</span><span style="color: #333333;">;</span> <span style="color: #333333;"> </span><span style="color: #009695;">void</span><span style="color: #333333;"> </span><span style="color: #333333;">Start</span><span style="color: #333333;"> </span><span style="color: #333333;">()</span><span style="color: #333333;"> </span><span style="color: #333333;">{</span> <span style="color: #333333;"> </span><span style="font-style: italic; color: #888888;">//</span><span > セッション開始</span> <span style="color: #333333;"> </span><span style="color: #333333;">ga</span><span style="color: #333333;">.</span><span style="color: #333333;">analytics</span><span style="color: #333333;">.</span><span style="color: #333333;">TrackSession</span><span style="color: #333333;">(</span><span style="color: #009695;">true</span><span style="color: #333333;">)</span><span style="color: #333333;">;</span> <span style="color: #333333;"> </span><span style="font-style: italic; color: #888888;">//</span><span > スクリーン名でのトラッキング</span> <span style="color: #333333;"> </span><span style="color: #333333;">ga</span><span style="color: #333333;">.</span><span style="color: #333333;">analytics</span><span style="color: #333333;">.</span><span style="color: #333333;">TrackAppview</span><span style="color: #333333;">(</span><span style="color: #f57d00;">"</span><span crayon-i">color: #f57d00;">gaunity</span><span >"</span><span >)</span><span >;</span> <span style="color: #333333;"> </span><span style="font-style: italic; color: #888888;">//</span><span > カテゴリ・ラベル・アクション・値(オプション)でのトラッキング</span> <span style="color: #333333;"> </span><span style="color: #333333;">ga</span><span style="color: #333333;">.</span><span style="color: #333333;">analytics</span><span style="color: #333333;">.</span><span style="color: #333333;">TrackEvent</span><span style="color: #333333;">(</span><span style="color: #f57d00;">"</span><span crayon-i">color: #f57d00;">eventCategory</span><span >"</span><span >,</span><span >"</span><span >eventLabel</span><span >"</span><span >,</span><span >"</span><span >eventAction</span><span >"</span><span >,</span><span >1234</span><span >)</span><span >;</span> <span style="color: #333333;"> </span><span style="font-style: italic; color: #888888;">//</span><span > セッション終了 ※通常、こんなに早くセッションを終える事は無いと思います</span> <span style="color: #333333;"> </span><span style="color: #333333;">ga</span><span style="color: #333333;">.</span><span style="color: #333333;">analytics</span><span style="color: #333333;">.</span><span style="color: #333333;">TrackSession</span><span style="color: #333333;">(</span><span style="color: #009695;">false</span><span style="color: #333333;">)</span><span style="color: #333333;">;</span> <span style="color: #333333;"> </span><span style="color: #333333;">}</span> <span style="color: #333333;"> </span> <span style="color: #333333;"> </span><span style="color: #009695;">void</span><span style="color: #333333;"> </span><span style="color: #333333;">Update</span><span style="color: #333333;"> </span><span style="color: #333333;">()</span><span style="color: #333333;"> </span><span style="color: #333333;">{</span> <span style="color: #333333;"> </span> <span style="color: #333333;"> </span><span style="color: #333333;">}</span> <span style="color: #333333;">}</span></span> |
最後に
Googleが公式に提供しているライブラリが整備され扱いやすくなるのが理想ですが…Firebaseがあるのでこのまま変わらない気がしています。
また、他にも同様のライブラリがあるようです。検討の際の一助になれば幸いです。