naichi's lab

3日後の自分(他人)への書き置き

【unity、Cloud Build】unityプロジェクトにGoogleAnalyticsを導入してCloud Buildを通すとこまで

f:id:naichilab:20161130021717p:plain:w320

先日の記事で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

  1. あらかじめGoogleAnalyticsにプロパティを用意しておく

    3つ用意した。

    • 太陽人間iOS
    • 太陽人間Android
    • 太陽人間Other
  2. 下記リポジトリからunity用プラグインのダウンロード

    https://github.com/googleanalytics/google-analytics-plugin-for-unity/releases

    GoogleAnalyticsV4.unitypackageをダウンロードした。

  3. [Android]AndroidManifestへのタグ追加はAdMob導入ですでに済んでいたので不要

  4. [iOS]AdSupportとかの参照追加とかも、AdMobとかですでにやってありそうだったので無視

    ちゃんと参照追加しましょう。 これがiOSビルドのエラー2(後述)を引き起こすので注意。

  5. GAv4 プレハブの配置と設定

    f:id:naichilab:20161128232255p:plain

    Send Launch Event にチェックを入れておくと起動するだけでデータが飛ぶみたい?

起動

Prefabをシーンに置いたまま、Unityエディタ上で起動してみると

Google Analytics -> レポート -> 作ったプロパティのビュー -> リアルタイム

f:id:naichilab:20161128232525p:plain

表示された!

どの画面を見ているかを取得

ここの内容です -> 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");

実行してみる。

f:id:naichilab:20161128233249p:plain

おー、簡単にどの画面開いてるか取れるようになった。

こりゃ楽しい。

CloudBuild上でエラーの嵐

エディタ上ではここまでで動くんだけど、Cloud Buildが Android / iOS ともに壊れてひどい目にあった。

よなよな対応して直すのに2日かかった...
それぞれの対応法は長くなるので全て別記事!

Androidのエラー

Unable to convert classes into dex format.

blog.naichilab.com

iOSのエラー1

'pod' command not found

blog.naichilab.com

iOSのエラー2

Undefined symbols for architecture armv7:

blog.naichilab.com

おわりに

いやー大変だった・・・

けどこれで AdMob + Google Analytics + アドフリくん を含んだ形でCloud Build通るようになったし一段落かな・・・