Google タグ マネージャーでは、モバイルアプリ内の測定用のタグやピクセルの実装と管理が可能で、その際にアプリケーションのバイナリを再ビルドしてアプリ マーケットプレイスに再提出する必要もありません。Firebase 向け Google アナリティクスの SDK を使用していれば、手軽にタグ マネージャーを導入でき、実装の管理や変更がアプリの出荷後でも可能です。
また、重要なイベントをログに記録しておくことにより、どのタグやピクセルを配信するかを後で決めることができます。
前提条件
事前に次の準備が必要です。
- Firebase コンソールで、Firebase プロジェクトにアプリを追加します。
- アプリに Google アナリティクスを導入します。Firebase プロジェクトで Google アナリティクスを有効化し、Firebase 向け Google アナリティクスの SDK をアプリに追加してください。
- タグ マネージャー アカウントを作成します。
- Google タグ マネージャー コンテナを設定します。
以下の各セクションでは、Android アプリで Google タグ マネージャーを設定および使用する手順を説明していきます。
1. Google タグ マネージャーをプロジェクトに追加する
モジュールの Gradle ファイル(通常は
app/build.gradle
)に、タグ マネージャー ライブラリに対する次の依存関係を追加します。dependencies { // ... compile 'com.google.android.gms:play-services-tagmanager:18.0.3' }
タグ マネージャー アカウントにログインします。
モバイル向けのコンテナを選択します。
上部のナビゲーション バーにある [バージョン] をクリックします。
使用するコンテナのバージョンをクリックします。
[ダウンロード] をクリックします。
app/src/main/assets/containers
フォルダが存在しない場合は作成します。ダウンロードしたコンテナをフォルダにコピーします。
2. イベントと変数をログに記録する
タグ マネージャーは、Firebase 向け Google アナリティクスの SDK によって記録されたイベント、パラメータ、ユーザー プロパティを使って、Google タグ マネージャーで設定済みのタグをトリガーおよび構築します。
イベントをログに記録する方法や、ユーザー プロパティを設定する方法については、Firebase のデベロッパー向けドキュメントをご覧ください。
タグ マネージャーで変数を設定する
Google タグ マネージャーで使用するイベント パラメータとユーザー プロパティの値を取得するには、タグ マネージャーの管理画面で変数を設定します。
たとえば、アプリで次のカスタム イベントをログに記録するとします。
Bundle params = new Bundle();
params.putString("image_name", name);
params.putString("full_text", text);
mFirebaseAnalytics.logEvent("share_image", params);
タグ マネージャーで新しいイベント パラメータ変数を次のように設定すれば、image_name
と full_text parameter
の値を取得できます。
- 変数名: Image Name
- 変数タイプ: イベント パラメータ
- イベント パラメータのキー名:
image_name
および
- 変数名: Full Text
- 変数タイプ: イベント パラメータ
- イベント パラメータのキー名:
full_text
同様に、アプリで次のユーザー プロパティを設定するとします。
mFirebaseAnalytics.setUserProperty("favorite_food", mFavoriteFood);
Google タグ マネージャーで新しい Firebase ユーザー プロパティ変数を次のように設定すれば、favorite_food
の値を取得できます。
- 変数名: Favorite Food
- 変数タイプ: Firebase ユーザー プロパティ
- イベント パラメータのキー名:
favorite_food
イベントを修正またはブロックする
タグ マネージャーを使用すると、Firebase 向け Google アナリティクスにログが記録される前に、イベントを変更したりブロックしたりできます。イベントを変更できると、アプリをアップデートしなくても、イベント パラメータの値の追加、削除、変更や、イベント名の調整が可能です。ブロックされていないイベントは、Firebase 向け Google アナリティクスにログが記録されます。
Firebase 向け Google アナリティクスの SDK が自動的に記録するイベントやユーザー プロパティもいくつか存在します。自動収集されているイベントやプロパティは、コードを特に追加しなくても、タグ マネージャーで活用できます。ただし、ブロックすることはできません。
3. イベントを送信する
Firebase イベント名変数、Firebase イベント パラメータ変数、その他の変数が、トリガーを設定するために使用されます。トリガー条件は、Firebase イベントをログに記録するたびに評価されます。Firebase 向け Google アナリティクスのイベントは、デフォルトでは自動的に配信されます。Firebase 向け Google アナリティクスのタグをタグ マネージャーに追加すれば、イベントがアナリティクスに送信されるのをブロックすることも可能です。
4. コンテナをプレビュー、デバッグし、公開する
あるバージョンのコンテナを公開する前に、そのコンテナをプレビューして、意図したとおりに機能することを確認する必要があります。Google タグ マネージャーを使用すると、管理画面でリンクと QR コードを生成し、それらを使用してアプリを開いて、各バージョンのコンテナをプレビューできます。詳細ログモードを有効にして、予期しない動作をデバッグすることもできます。
コンテナをプレビューする
コンテナをプレビューする前に、Google タグ マネージャーの管理画面で、プレビューするコンテナのバージョンを選択し、[プレビュー] を選択することにより、プレビュー URL を生成します。後の手順で使用するために、このプレビュー URL を保存しておきます。
コンテナをプレビューする手順(Android Studio を使用している場合は、ステップ 3 に進みます)は次のとおりです。
このプレビュー アクティビティを
AndroidManifest
ファイルに追加します。<!-- Add preview activity. --> <activity android:name="com.google.android.gms.tagmanager.TagManagerPreviewActivity" android:noHistory="true"> <!-- optional, removes previewActivity from activity stack. --> <intent-filter> <data android:scheme="tagmanager.c.com.example.app" /> <action android:name="android.intent.action.VIEW" /> <category android:name="android.intent.category.DEFAULT" /> <category android:name="android.intent.category.BROWSABLE"/> </intent-filter> </activity>
次の行を変更して、アプリのパッケージ名を含めます。
<data android:scheme="tagmanager.c.com.example.app"/>
Google タグ マネージャーの管理画面で、プレビュー リンクを生成します。
- タグ マネージャー アカウントにログインします。
- モバイル向けのコンテナを選択します。
- 上部のナビゲーション バーにある [バージョン] をクリックします。
- プレビューするコンテナ バージョンで [アクション] > [プレビュー] をクリックします。
- アプリのパッケージ名を入力します。
- [開始プレビュー リンクを作成] をクリックします。
アプリを停止し、生成されたプレビュー リンクまたは QR コードを使用してアプリを起動します。
プレビュー モードを終了するには、管理画面の [終了プレビュー リンクを作成] で生成されたリンクをクリックします。
コンテナをデバッグする
コンテナの実装に関する問題を解決するには、詳細ログを有効にします。
$ adb shell setprop log.tag.GoogleTagManager VERBOSE
コンテナを公開する
コンテナをプレビューし、機能していることを確認したら、コンテナを公開できます。コンテナを公開すると、モバイルアプリ ユーザーがお客様のタグ設定を利用できるようになります。
次のステップ
高度な設定をご覧ください。