関数呼び出し変数と関数呼び出しタグを追加して、Google タグ マネージャーの機能を拡張することができます。関数呼び出し変数を使用すると、事前登録された関数の呼び出しによって返された値を取得できます。関数呼び出しタグを使用すると、事前に登録された関数を呼び出して、たとえば、タグ マネージャーのタグ テンプレートで現在サポートされていない追加の測定ツールやリマーケティング ツールのヒットをトリガーすることができます。
カスタムタグとカスタム変数を追加する
関数呼び出しでカスタムタグまたはカスタム変数を追加するには:
com.google.android.gms.tagmanager.CustomTagProvider
またはcom.google.android.gms.tagmanager.CustomVariableProvider
を拡張するクラスを実装します。import android.support.annotation.Keep; import java.util.Map; @Keep public class HighScoreProvider implements com.google.android.gms.tagmanager.CustomVariableProvider { @Override public String getValue(Map<String, Object> map) { synchronized (HighScoreProvider.class) { return ((Long)sHighScore).toString(); } } private static long sHighScore = 0; public static void recordScore(long score) { synchronized (HighScoreProvider.class) { sHighScore = Math.max(score, sHighScore); } } }
ProGuard を使用する場合は、クラス名とメソッドが難読化されないようにします。Keep オプションを使用すると、難読化の対象から外すことができます。
Google タグ マネージャーの管理画面で、完全修飾クラス名を使用してタグと変数を設定します。