Google Tag Manager for Android v5 を使って、Firebase 自動イベントを Google Analytics に送ってみる

# 概要
**Google Tag Manager for Android** がバージョンアップされ、v5 になり **Firebase Analytics** との連携が簡単になりました。
今回は、そちらのご紹介がてら **Firebase Analytics** で計測される自動イベントを **Google Analytics** に送ってみようと思います。

# Google Tag Manager とは
https://www.google.com/intl/ja/tagmanager/

Google タグマネージャは無料で簡単に使用できるタグ管理システムです。ウェブ上の使いやすい管理画面から自分でタグを管理してモバイル アプリを設定できるため、面倒なコード書き換えは不要で、IT 部門に依頼する必要もありません。
※ [Google Tag Manager 機能](https://www.google.com/intl/ja/tagmanager/features.html)

# Google Tag Manager for Android
https://developers.google.com/tag-manager/android/v5/

- アプリの再ビルドをせずに **Firebase Analytics** に送信するイベントの追加、削除、編集が出来ます
- **Google Tag Manager** を利用することで下記の製品との連携も可能
 - Google Analytics 
 - DoubleClick
 - AdWords
 - adjust
 - AppsFlyer
 - Apsalar
 - Kochava
 - Tune

今回は **Google Analytics** との連携についてのお話になります。

# Google Tag Manager + Firebase 導入方法
導入については比較的簡単です。
公式サイトにまとまっているため、[こちら](https://developers.google.com/tag-manager/android/v5/)を参照するようにお願いします。

# Firebase Analytics の自動イベントを Google Analytics に送ってみよう

**Google Tag Manager** にログインするとこちらのような画面が表示されます。
![スクリーンショット 2016-12-22 11.00.31.png](https://qiita-image-store.s3.amazonaws.com/0/47143/ed81056d-abbc-560c-0e1f-6b1a076c70ec.png)

ここでは細かい画面の説明は省略させていただき、**Firebase Analytics** の自動イベントを **Google Analytics** に送る手順について説明します。

## トリガー
1. ワークスペース内の**トリガー**を選択します
![スクリーンショット 2016-12-22 11.00.31 2.png](https://qiita-image-store.s3.amazonaws.com/0/47143/d688e41a-ea76-c15f-83cf-27bb0078c1e0.png)


2. トリガーの一覧画面で**新規**を選択する
![スクリーンショット 2016-12-22 11.08.04.png](https://qiita-image-store.s3.amazonaws.com/0/47143/6dd22c40-1b93-0346-3336-d224c78bd979.png)

3. **トリガーのタイプを選択して設定を開始**を選択する
![スクリーンショット 2016-12-22 9.41.52.png](https://qiita-image-store.s3.amazonaws.com/0/47143/7f1dd0ef-c01e-baa0-9bdd-83fd5a33e865.png)

4. 選択可能なトリガーの一覧が表示される。ここでは、**セッション開始**を選択します
![スクリーンショット 2016-12-22 9.41.02.png](https://qiita-image-store.s3.amazonaws.com/0/47143/e8e957f0-6450-0d64-8f32-e56901eb93b0.png)
  ※**Firebase 自動イベント** 欄にある下記の値が v5 で追加された **Firebase Analytics** のイベント

5. **トリガーの種類**として、**Firebase 自動イベント - セッション開始**が設定されましたので、**保存**します
![スクリーンショット 2016-12-22 9.42.10.png](https://qiita-image-store.s3.amazonaws.com/0/47143/2daf5a38-d73e-1383-ed03-f7e0286c1ccf.png)
 ※トリガーの名前は任意で構いません。ここでは**Firebase 自動イベント - セッション開始**としています。

## タグ
先ほど作成したトリガーを用いて**Firebase Analytics**の値を**Google Analytics**に飛ばしてみます。

1. ワークスペース内の**タグ**を選択
![スクリーンショット 2016-12-22 11.00.31.png](https://qiita-image-store.s3.amazonaws.com/0/47143/ce0b57ca-ac5b-924e-6b80-3916eff944fb.png)

2. タグ一覧画面から**新規**を選択する

3. **タグの設定**の**タグタイプを選択して設定を開始**を選択する
![スクリーンショット 2016-12-22 10.35.17.png](https://qiita-image-store.s3.amazonaws.com/0/47143/4875278f-c94b-04fa-6056-eeef3a9a6477.png)

4. **タグタイプを選択**から**ユニバーサル アナリティクス** を選択する
5. 
![スクリーンショット 2016-12-22 10.36.29.png](https://qiita-image-store.s3.amazonaws.com/0/47143/0065549d-485a-8cd0-cd17-fca57560157f.png)

5. トラッキングタイプをイベントにする（トラッキングIDはご使用のアカウントのものを入力してください）

![スクリーンショット 2016-12-22 10.40.36.png](https://qiita-image-store.s3.amazonaws.com/0/47143/0abe8bbf-6006-034d-3df0-534e8456ec93.png)
6. **カテゴリ**に変数として **EventName** を設定します。この変数は Firebase Analytics のイベントの名前を意味しています。
![スクリーンショット 2016-12-22 10.42.11.png](https://qiita-image-store.s3.amazonaws.com/0/47143/18087537-b514-0838-1bdb-8cc2b25364a1.png)
7. **トリガー**の**トリガーを選択してこのタグを配信**を選択し、先程作成した**トリガー**を設定します
![スクリーンショット 2016-12-22 10.43.03.png](https://qiita-image-store.s3.amazonaws.com/0/47143/7f0b5cfb-b5c5-406d-29b3-70ec426941d7.png)
8. タグに名前をつけて保存します。（ここでは**Firebase 自動イベント - セッション開始**としています）
![スクリーンショット 2016-12-22 10.43.43.png](https://qiita-image-store.s3.amazonaws.com/0/47143/41c7770e-a6c4-c831-d26a-1b735fce1ac7.png)
9. タグの一覧に下記ができていれば準備は完了です。
![スクリーンショット 2016-12-22 10.34.22.png](https://qiita-image-store.s3.amazonaws.com/0/47143/26925b7a-a78b-53fd-0906-8a9b589a1334.png)

## 公開まで
あとは、プレビューで動作確認すると **Google Analytics** に **session_start** などが計測されます。
確認後に公開すれば、既存のアプリにも設定が反映されるようになります。

# まとめ
- **Firebase Analytics** 自動イベントや変数が簡単に設定可能になった
 - 以前は、アプリ側で Container の初期化などが必要
- **Google Analytics** にイベントを飛ばすことで計測がより詳細に行えるようになる
 - BigQuery 使わずに
- **Google Tag Manager** のトリガーは **Firebase Analytics** のみ
- v4 まで使用可能であった**DataLaye**が使えなくなった（※[以前の値コレクション欄を参照](https://support.google.com/tagmanager/answer/7182414?hl=ja&ref_topic=7182737)）
 - こちらについては、**RemoteConfig**で代用ということなのでしょうか。**Google Tag Manager**と比べるとフォルダ管理や変数が利用できないので、今まで使っていた方は足りないかも知れません
- 今回紹介していないものとして、Firebase Analytics のイベントの追加・削除・編集などがありますが、こちらもリリース後に値を変えたい！！などの要望に答えられるので、Firebase Analytics とあわせて Google Tag Manager を導入しておくのもありかと思います


## 参考
[変数](https://support.google.com/tagmanager/answer/6106899)
[Android 用のコンテナの組み込み変数](https://support.google.com/tagmanager/answer/7182414?hl=ja&ref_topic=7182737)
[Firebase 自動的に収集されるイベント](https://support.google.com/firebase/answer/6317485)
[Firebase Analytics のイベントとパラメータの詳細](https://support.google.com/firebase/answer/7061705?hl=ja)

## Firebase 関連の変数
![スクリーンショット 2016-12-22 9.33.29.png](https://qiita-image-store.s3.amazonaws.com/0/47143/753ca496-2090-5777-f09d-281f07c1716d.png)
![スクリーンショット 2016-12-22 9.34.00.png](https://qiita-image-store.s3.amazonaws.com/0/47143/750e6697-5d95-0586-d84b-0f277368c551.png)
![スクリーンショット 2016-12-22 9.33.37.png](https://qiita-image-store.s3.amazonaws.com/0/47143/d673786d-7287-b4a3-6c38-5ef1af717c63.png)
![スクリーンショット 2016-12-22 9.33.43.png](https://qiita-image-store.s3.amazonaws.com/0/47143/78327108-8820-97d4-89e2-ad6f99f7e693.png)
![スクリーンショット 2016-12-22 9.33.54.png](https://qiita-image-store.s3.amazonaws.com/0/47143/8caffee2-52d4-b280-22ce-77cd20ba2318.png)