先日の記事でFirebaseの導入に失敗したので代わりにGoogleAnalyticsを入れる。
はじめに
AdMob導入済みの
この記事の最後にも書きますが、 Cloud Buildが見事にエラーしまくるのでGit等のコミット(バックアップ)はこまめにね!!!
環境
- やった日 : 2016/11/30
- Google Mobile Ads Unity Plugin v3.1.2 (ビルドエラー対応で更新 3.0.5 -> 3.1.2)
- GoogleAnalyticsV4.unitypackage (v0.5-beta) (この記事で新規追加)
- Unity 5.5.0f2
手順
基本的に下記ページに従う
Google Analytics Plugin for Unity - Developer Guide | Analytics for Unity | Google Developers
あらかじめGoogleAnalyticsにプロパティを用意しておく
3つ用意した。
- 太陽人間iOS
- 太陽人間Android
- 太陽人間Other
下記リポジトリからunity用プラグインのダウンロード
https://github.com/googleanalytics/google-analytics-plugin-for-unity/releases
GoogleAnalyticsV4.unitypackage
をダウンロードした。[Android]AndroidManifestへのタグ追加はAdMob導入ですでに済んでいたので不要
[iOS]AdSupportとかの参照追加とかも、AdMobとかですでにやってありそうだったので無視
ちゃんと参照追加しましょう。 これがiOSビルドのエラー2(後述)を引き起こすので注意。
GAv4
プレハブの配置と設定Send Launch Event にチェックを入れておくと起動するだけでデータが飛ぶみたい?
起動
Prefabをシーンに置いたまま、Unityエディタ上で起動してみると
Google Analytics -> レポート -> 作ったプロパティのビュー -> リアルタイム
表示された!
どの画面を見ているかを取得
ここの内容です -> Google Analytics Plugin for Unity - API Reference | Analytics for Unity | Google Developers
今のプロジェクトでは SceneSwitcher
ってクラスで画面遷移を制御してる。
そいつに GoogleAnalyticsV4のインスタンスをもたせて
public class SceneSwitcher : MonoBehaviour, ISceneSwitcher { public GoogleAnalyticsV4 googleAnalytics;
画面切り替えのタイミングで LogScreen
メソッドを呼び出す
googleAnalytics.LogScreen ("Field");
実行してみる。
おー、簡単にどの画面開いてるか取れるようになった。
こりゃ楽しい。
CloudBuild上でエラーの嵐
エディタ上ではここまでで動くんだけど、Cloud Buildが Android / iOS ともに壊れてひどい目にあった。
よなよな対応して直すのに2日かかった...
それぞれの対応法は長くなるので全て別記事!
Androidのエラー
Unable to convert classes into dex format.
iOSのエラー1
'pod' command not found
iOSのエラー2
Undefined symbols for architecture armv7:
おわりに
いやー大変だった・・・
けどこれで AdMob
+ Google Analytics
+ アドフリくん
を含んだ形でCloud Build通るようになったし一段落かな・・・