Configurazione avanzata di Android Tag Manager
Mantieni tutto organizzato con le raccolte
Salva e classifica i contenuti in base alle tue preferenze.
Per estendere la funzionalità di Google Tag Manager, puoi aggiungere variabili chiamata funzione e tag chiamata funzione. Le variabili di chiamata di funzione ti consentono di acquisire i valori restituiti dalle chiamate alle funzioni preregistrate. I tag di chiamata funzione ti consentono di eseguire funzioni preregistrate (ad es. per attivare hit per strumenti di misurazione e remarketing aggiuntivi che non sono attualmente supportati con i modelli di tag in Tag Manager).
Per aggiungere un tag o una variabile personalizzata con una chiamata di funzione:
Implementa una classe che estenda
com.google.android.gms.tagmanager.CustomTagProvider
o
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);
}
}
}
Se utilizzi ProGuard, assicurati che i nomi e i metodi delle classi non siano offuscati. Utilizza l'annotazione di Keep per specificarlo.
Nell'interfaccia web di Google Tag Manager, utilizza il nome completo della classe per configurare i tag e le variabili:

Salvo quando diversamente specificato, i contenuti di questa pagina sono concessi in base alla licenza Creative Commons Attribution 4.0, mentre gli esempi di codice sono concessi in base alla licenza Apache 2.0. Per ulteriori dettagli, consulta le norme del sito di Google Developers. Java è un marchio registrato di Oracle e/o delle sue consociate.
Ultimo aggiornamento 2024-11-08 UTC.
[null,null,["Ultimo aggiornamento 2024-11-08 UTC."],[[["\u003cp\u003eFunction Call variables enable capturing values from pre-registered function calls, extending Google Tag Manager's capabilities.\u003c/p\u003e\n"],["\u003cp\u003eFunction Call tags allow execution of pre-registered functions, such as triggering hits for unsupported measurement tools.\u003c/p\u003e\n"],["\u003cp\u003eCustom tags and variables can be added by implementing a class extending \u003ccode\u003eCustomTagProvider\u003c/code\u003e or \u003ccode\u003eCustomVariableProvider\u003c/code\u003e.\u003c/p\u003e\n"],["\u003cp\u003eProGuard users should prevent obfuscation of custom class names and methods using the Keep annotation.\u003c/p\u003e\n"],["\u003cp\u003eWithin the Google Tag Manager interface, use the fully qualified class name to configure the custom tags and variables.\u003c/p\u003e\n"]]],["Function Call variables and tags extend Google Tag Manager's functionality. Function Call variables capture values from pre-registered function calls, while Function Call tags execute pre-registered functions. To add custom tags/variables, implement a class extending `CustomTagProvider` or `CustomVariableProvider`. Use the `@Keep` annotation to prevent obfuscation with ProGuard. Finally, configure tags and variables in Google Tag Manager's web interface using the fully qualified class name.\n"],null,["# Advanced Android Tag Manager configuration\n\nTo extend the functionality of Google Tag Manager, you can add Function Call\nvariables and Function Call tags. Function Call variables let you capture the\nvalues returned by calls to pre-registered functions. Function Call tags let you\nexecute pre-registered functions (e.g., to trigger hits for additional\nmeasurement and remarketing tools that are not currently supported with tag\ntemplates in Tag Manager).\n\nAdd custom tags and variables\n-----------------------------\n\nTo add a custom tag or custom variable with a Function Call:\n\n1. Implement a class that extends\n `com.google.android.gms.tagmanager.CustomTagProvider` or\n `com.google.android.gms.tagmanager.CustomVariableProvider`:\n\n import android.support.annotation.Keep;\n import java.util.Map;\n\n @Keep\n public class HighScoreProvider implements com.google.android.gms.tagmanager.CustomVariableProvider {\n @Override\n public String getValue(Map\u003cString, Object\u003e map) {\n synchronized (HighScoreProvider.class) {\n return ((Long)sHighScore).toString();\n }\n }\n\n private static long sHighScore = 0;\n public static void recordScore(long score) {\n synchronized (HighScoreProvider.class) {\n sHighScore = Math.max(score, sHighScore);\n }\n }\n }\n\n2. If you use [ProGuard](https://developer.android.com/tools/help/proguard.html), make sure that the class names and methods are not\n obfuscated. Use the Keep annotation to specify this.\n\n3. In Google Tag Manager's web interface, use the fully qualified class name\n to set up tags and variables:"]]