SlideShare a Scribd company logo
1 of 14
Google Tag Manager
AplicacionesMóviles
Mabel Rodriguez - @enielbam 2
Este manual tiene la finalidad de guiarte en la implementación de Google Tag Manager en
aplicaciones desarrolladas en Android.
Antes de empezar debes evaluar si tu aplicación es tan compleja y cambia
constantemente o si en realidad no es un desarrollo de gran magnitud, esta pregunta es
muy importante ya que si bien es cierto Google Tag manager te ayuda a administrar todos
tus tags se debe tener en cuenta lo complejo de su implementación, si es un desarrollo
pequeño en realidad lo mejor es utilizar directamente los tags de Google Analytics.
I. Crear un contenedoren Google Tag manager
1. Para este caso ya tenemos una cuenta en GTM, por lo tanto solo debemos crear un
contenedor para nuestra app:
2. En este puntose debe asignarun nombre al contenedor,que puede ser el nombre de
nuestraapp,es muyimportante seleccionarparaque tipo de desarrollo se utilizará el
contenedor,de noseleccionar “Android” en este paso, se deberá crear un contendor
nuevo ya que esta opción no se puede cambiar una vez creado el contenedor.
Mabel Rodriguez - @enielbam 3
3. Finalmente ya podemos trabajar en los tags:
II. Data layer
Para enviar valores de navegación de nuestra app, usaremos Datalayers, el concepto es el
mismo de un sitio web: es un vector con valores asignados a determinadas variables.
Por ejemplo, en los siguientes puntos enviaremos todos los datos mediante eventos
automáticos (no confundir con eventos de Google Analytics), para luego recuperar estos
valores desde el administrador de Google tag manager.
La estructura de un evento GTMes:
Datalater.pushEvent
dataLayer.pushEvent("nombreEvento", DataLayer.mapOf("nombreVariable", valorVariable));
Donde:
Variable Detalle
nombreEvento
Nombre de eventoque se recuperará enGoogle TagManager (noes un eventode
Google Analytics)
nombreVariable Nombre de la variable definida.
valorVariable Valor asociado a la variable
1. Screens
Al abrir cada pantalla de la aplicación incluyendo la pantalla de login si se tuviera, se
debe incluir el siguiente script:
Screem Tracker
DataLayer dataLayer = TagManager.getInstance(context).getDataLayer();
dataLayer.pushEvent("openScreen", DataLayer.mapOf("screenName", screenName));
Mabel Rodriguez - @enielbam 4
Donde:
Variable Detalle
Context Valor por defecto this
screenName Nombre de la pantallaactual
2. Eventos
Para el seguimientode eventosse debe implementar el script una vez completada la
acción deseada:
Event Tracker
DataLayer dataLayer = TagManager.getInstance(Context).getDataLayer();
dataLayer.pushEvent("virtualEvent", DataLayer.mapOf("eventCategory", Categoría, "eventAction",
Acción, "eventLabel", Label));
Donde:
Variable Detalle
Context Valor por defecto this
Categoría Categoría asociada al evento
Acción Acción asociada al evento
Etiqueta Etiqueta asociada al evento
Algunosejemplosde eventospodríanser:
 Llamar
 Agendar
 Actualizardatos
 Seleccionaralgo
 Filtros
 Búsqueda
 Pasode nivel,etc.
Se debe tenerencuenta que no es recomendable medir absolutamente todo, antes
se debe definir que es lo que necesito medir y como me puede ayudar esa
información al monitoreo de mis KPIs.
3. Dimensiones personalizadas
Para el envío de dimensiones el script será el siguiente:
Mabel Rodriguez - @enielbam 5
Dimensions Tracker
DataLayer dataLayer = TagManager.getInstance(Context).getDataLayer();
dataLayer.pushEvent("customDimensions", DataLayer.mapOf("Dimension1", Valor1, "Dimension2",
valor2));
4. Bloqueo y excepciones
La mediciónde losbloqueosy excepcionesnosayudaráamedirel númeroy el tipo de
bloqueos detectados y no detectados en la aplicación. Se recomienda leer las
referenciasde Google Analytics(ExcepcionesenAndroid GA) para mayor información
sobre la información a enviar.
La información relacionada a las excepciones se enviará mediante eventos para su
configuración desde Google tag Manager.
El scriptasociadoesel siguiente,se debeenviarcadavezque se detecte un bloqueo o
excepción:
Event Tracker
DataLayer dataLayer = TagManager.getInstance(context).getDataLayer();
dataLayer.pushEvent("getException", DataLayer.mapOf("exDescription", description, "isFatal",
isFatal));
Donde:
Variable Detalle
Context Valor por defecto this
description
Descripciónde la excepción (hasta 100 caracteres). Admite null. No se debe enviar
nunca el mensaje de la excepción(e.getMessage()), ya que puede contener
informaciónde identificación personal.
isFatal
true | false
Indica si la excepciónera grave. true indica que sí.
Medición de excepciones no detectadas
Las excepciones no detectadas representan instancias en las que la aplicación ha
detectado condiciones inesperadas durante la ejecución, a menudo críticas, que
bloquean la aplicación. Las excepciones no detectadas se pueden enviar a Google
Analyticsautomáticamente estableciendounvalor de ga_reportUncaughtExceptions
o usando la clase ExceptionReporter.
Mabel Rodriguez - @enielbam 6
Configuración automática
Para enviarde formaautomáticatodas lasexcepcionesnodetectadasenlaaplicación
mediante el valorde ga_reportUncaughtExceptions,se debeagregarlasiguientelínea
al archivo XML de configuración:
Event Tracker
<bool name="ga_reportUncaughtExceptions">true</bool>
III. Google Tag Manager
Una vez que se han implementado los scripts en nuestra app, ya se pueden hacer las
configuraciones necesarias en Google Tag Manager.
1. Primerose debenrecuperarlosvaloresde las variables que se han incluido dentro de los
datalayer,paraestocrearemostantas variablescomoseanecesario,porejemplosi vemos
el ejemplo del Tag de Screen views, tenemos:
Screem Tracker
DataLayer dataLayer = TagManager.getInstance(context).getDataLayer();
dataLayer.pushEvent("openScreen", DataLayer.mapOf("screenName", screenName));
Aquí vemosque manejamos la variable “screenName” asociada al evento “openScreen”.
2. Para recuperar el nombre de la pantalla, creamos una variable tipo Data Layer:
Mabel Rodriguez - @enielbam 7
3. En el siguiente puntodebemos asignarunnombre anuestravariable (UA - screenName) y
en el campo Data Layer Variable Name, se debe colocar el mismo nombre de la variable
que se está enviando mediante el Data Layer (screenName):
4. Luegodebemoscrearel trigger o regla mediante la cual se ejecutará nuestro tag, en este
caso hemos enviado los datos mediante un Push event, entonces nuestra regla será:
Mabel Rodriguez - @enielbam 8
Esto significa que el tag (aún no creado) se ejecutara sólo cuando se ejecute un evento
llamado openScreen
5. Comoya tenemoslasvariablesytriggerscreados,procedemosacrear el Tag, eneste caso
será unapp view de GoogleAnalytics:
Mabel Rodriguez - @enielbam 9
6. El nombre de este eventoserá: UA – Screen. En el segundo paso se debe ingresar el ID de
Google Analytics, y escoger el tipo de track App View:
7. Ahora para enviar a Google Analytics el nombre de la pantalla se debe configurar el
parámetro Field: ScreeenName y asignarle el valor de la variable que acabamos de
recuperar:
Mabel Rodriguez - @enielbam 10
8. Finalmentedebemosasignarla regla de ejecución de este Tag, elegimos Custom Trigger:
Mabel Rodriguez - @enielbam 11
9. Se abrirá una ventana con todas los triggers que hemos configurado previamente, y
seleccionamos el trigger EV – openScreen, que creamos en el paso 4 y guardamos el tag:
El proceso para el envio de eventos, transacciones, dimensiones u otro tag es similar al
descrito anteriormente, solo se debe seleccionar el tipo de track y enviar los valores
necesarios.
Mabel Rodriguez - @enielbam 12
IV. Script Google Tag Manager:
1. Despuesde haberconfigurado todos los tags en Google Tag Manager, se debe publicar la
versión actual:
2. En un segundopasose debe exportarel contendorque acabamosde crear, esto se realiza
desde la pestaña Admin:
Mabel Rodriguez - @enielbam 13
3. Por defectoel nombre del contenedoresel IDde la cuentade GTM seguidode laversión
que hemosseleccionado:
4. Se debe teneren cuentaque el nombre del archivosolodebe quedarel IDdel contenedor,
sin la versión:
5. Para la integración del contenedor con nuestra app, primero se debe configurar Google
Play Services SDK (más información en el link).
6. Como segundo paso se debe agregar los siguientes permisos en el archivo
AndroidManifest.xml
Mabel Rodriguez - @enielbam 14
AndroidManifest.xml
<!-- For TagManager SDK -->
<uses-permissionandroid:name="android.permission.INTERNET" />
<uses-permissionandroid:name="android.permission.ACCESS_NETWORK_STATE" />
7. Luego configurar el contenedor por defecto: se debe agregar el archivo binario (que
exportamos enel administradorde GTM – punto2) enel repositorio del proyecto, dentro
del subfolder <project-root>/res/raw.
8. InicializarGoogle TagManager, para esto se recomienda revisar la configuración según la
versión de Android.
a. Androidv4 https://developers.google.com/tag-manager/android/v4/
b. Donde:CONTAINER_ID= GTM–WP9BX9

More Related Content

Similar to Google Tag Manager para aplicaciones en android

Google tag manager curso básico. Mondragon Unibertsitatea. Eli Garcia
Google tag manager curso básico. Mondragon Unibertsitatea. Eli GarciaGoogle tag manager curso básico. Mondragon Unibertsitatea. Eli Garcia
Google tag manager curso básico. Mondragon Unibertsitatea. Eli GarciaEli Garcia
 
Appcircus Academy: Integración de Social Media en Android
Appcircus Academy: Integración de Social Media en AndroidAppcircus Academy: Integración de Social Media en Android
Appcircus Academy: Integración de Social Media en AndroidAlberto Ruibal
 
Instalación y manejo de eas en MetaTrader Build 600+
Instalación y manejo de eas en MetaTrader Build 600+Instalación y manejo de eas en MetaTrader Build 600+
Instalación y manejo de eas en MetaTrader Build 600+Investing and Development LTD
 
LabAndroid: Taller "Mi Primera Aplicación Android"
LabAndroid: Taller "Mi Primera Aplicación Android"LabAndroid: Taller "Mi Primera Aplicación Android"
LabAndroid: Taller "Mi Primera Aplicación Android"Alberto Ruibal
 
Congreso visión 2012 - taller introducción app engine
Congreso visión 2012 - taller introducción app engineCongreso visión 2012 - taller introducción app engine
Congreso visión 2012 - taller introducción app engineNigeŗ Arce
 
UDA-Componentes RUP. Mensajes (v2.1.1 deprecado)
UDA-Componentes RUP. Mensajes (v2.1.1 deprecado)UDA-Componentes RUP. Mensajes (v2.1.1 deprecado)
UDA-Componentes RUP. Mensajes (v2.1.1 deprecado)Ander Martinez
 
Grails: Framework para el desarrollo de aplicaciones Web No 5
Grails: Framework para el desarrollo de aplicaciones Web No 5Grails: Framework para el desarrollo de aplicaciones Web No 5
Grails: Framework para el desarrollo de aplicaciones Web No 5Esteban Saavedra
 
Unidad 5 Programación de dispositivos moviles
Unidad 5 Programación de dispositivos movilesUnidad 5 Programación de dispositivos moviles
Unidad 5 Programación de dispositivos movileskabis_yadira
 

Similar to Google Tag Manager para aplicaciones en android (20)

Google tag manager curso básico. Mondragon Unibertsitatea. Eli Garcia
Google tag manager curso básico. Mondragon Unibertsitatea. Eli GarciaGoogle tag manager curso básico. Mondragon Unibertsitatea. Eli Garcia
Google tag manager curso básico. Mondragon Unibertsitatea. Eli Garcia
 
Android
AndroidAndroid
Android
 
Final
FinalFinal
Final
 
Atix13
Atix13Atix13
Atix13
 
Computación 3
Computación 3Computación 3
Computación 3
 
Appcircus Academy: Integración de Social Media en Android
Appcircus Academy: Integración de Social Media en AndroidAppcircus Academy: Integración de Social Media en Android
Appcircus Academy: Integración de Social Media en Android
 
Act.11
Act.11Act.11
Act.11
 
Instalación y manejo de eas en MetaTrader Build 600+
Instalación y manejo de eas en MetaTrader Build 600+Instalación y manejo de eas en MetaTrader Build 600+
Instalación y manejo de eas en MetaTrader Build 600+
 
2_JSEventos.pdf
2_JSEventos.pdf2_JSEventos.pdf
2_JSEventos.pdf
 
Aplicación zirconia
Aplicación zirconiaAplicación zirconia
Aplicación zirconia
 
Sesion 02 clases en_vb_net
Sesion 02 clases en_vb_netSesion 02 clases en_vb_net
Sesion 02 clases en_vb_net
 
Big Data + Marketing Digital
Big Data + Marketing DigitalBig Data + Marketing Digital
Big Data + Marketing Digital
 
Practica 3 _U3
Practica 3 _U3Practica 3 _U3
Practica 3 _U3
 
P3
P3P3
P3
 
LabAndroid: Taller "Mi Primera Aplicación Android"
LabAndroid: Taller "Mi Primera Aplicación Android"LabAndroid: Taller "Mi Primera Aplicación Android"
LabAndroid: Taller "Mi Primera Aplicación Android"
 
Congreso visión 2012 - taller introducción app engine
Congreso visión 2012 - taller introducción app engineCongreso visión 2012 - taller introducción app engine
Congreso visión 2012 - taller introducción app engine
 
UDA-Componentes RUP. Mensajes (v2.1.1 deprecado)
UDA-Componentes RUP. Mensajes (v2.1.1 deprecado)UDA-Componentes RUP. Mensajes (v2.1.1 deprecado)
UDA-Componentes RUP. Mensajes (v2.1.1 deprecado)
 
Tdd
TddTdd
Tdd
 
Grails: Framework para el desarrollo de aplicaciones Web No 5
Grails: Framework para el desarrollo de aplicaciones Web No 5Grails: Framework para el desarrollo de aplicaciones Web No 5
Grails: Framework para el desarrollo de aplicaciones Web No 5
 
Unidad 5 Programación de dispositivos moviles
Unidad 5 Programación de dispositivos movilesUnidad 5 Programación de dispositivos moviles
Unidad 5 Programación de dispositivos moviles
 

Recently uploaded

P.P ANÁLISIS DE UN TEXTO BÍBLICO. TEMA 10.pptx
P.P ANÁLISIS DE UN TEXTO BÍBLICO. TEMA 10.pptxP.P ANÁLISIS DE UN TEXTO BÍBLICO. TEMA 10.pptx
P.P ANÁLISIS DE UN TEXTO BÍBLICO. TEMA 10.pptxJafetColli
 
Adultos Mayores más de 60 años como de la población total (2024).pdf
Adultos Mayores más de 60 años como  de la población total (2024).pdfAdultos Mayores más de 60 años como  de la población total (2024).pdf
Adultos Mayores más de 60 años como de la población total (2024).pdfJC Díaz Herrera
 
Los primeros 60 países por IDH en el año (2024).pdf
Los primeros 60 países por IDH en el año (2024).pdfLos primeros 60 países por IDH en el año (2024).pdf
Los primeros 60 países por IDH en el año (2024).pdfJC Díaz Herrera
 
Letra de cambio definición y características.ppt
Letra de cambio definición y características.pptLetra de cambio definición y características.ppt
Letra de cambio definición y características.pptssuserbdc329
 
metodo SOAP utilizado para evaluar el estado de un paciente
metodo SOAP utilizado para evaluar el estado de un pacientemetodo SOAP utilizado para evaluar el estado de un paciente
metodo SOAP utilizado para evaluar el estado de un pacienteMedicinaInternaresid1
 
decreto 2090 de 2003.pdf actividades de alto riesgo en Colombia
decreto 2090 de 2003.pdf actividades de alto riesgo en Colombiadecreto 2090 de 2003.pdf actividades de alto riesgo en Colombia
decreto 2090 de 2003.pdf actividades de alto riesgo en Colombiaveronicayarpaz
 
Perú en el ranking mundial, segun datos mineria
Perú en el ranking mundial, segun datos mineriaPerú en el ranking mundial, segun datos mineria
Perú en el ranking mundial, segun datos mineriaItalo838444
 
procedimiento paran la planificación en los centros educativos tipo v(multig...
procedimiento  paran la planificación en los centros educativos tipo v(multig...procedimiento  paran la planificación en los centros educativos tipo v(multig...
procedimiento paran la planificación en los centros educativos tipo v(multig...claudioluna1121
 
EPIDEMIO CANCER PULMON resumen nnn.pptx
EPIDEMIO CANCER PULMON  resumen nnn.pptxEPIDEMIO CANCER PULMON  resumen nnn.pptx
EPIDEMIO CANCER PULMON resumen nnn.pptxJEFFERSONMEDRANOCHAV
 
Alfredo Gabriel Rodriguez Yajure Tarea#1
Alfredo Gabriel Rodriguez Yajure Tarea#1Alfredo Gabriel Rodriguez Yajure Tarea#1
Alfredo Gabriel Rodriguez Yajure Tarea#1alfredo130306
 
Evolución de la fortuna de la familia Slim (1994-2024).pdf
Evolución de la fortuna de la familia Slim (1994-2024).pdfEvolución de la fortuna de la familia Slim (1994-2024).pdf
Evolución de la fortuna de la familia Slim (1994-2024).pdfJC Díaz Herrera
 
diseño de una linea de produccion de jabon liquido.pptx
diseño de una linea de produccion de jabon liquido.pptxdiseño de una linea de produccion de jabon liquido.pptx
diseño de una linea de produccion de jabon liquido.pptxHhJhv
 
Conversacion.pptx en guarani boliviano latino
Conversacion.pptx en guarani boliviano latinoConversacion.pptx en guarani boliviano latino
Conversacion.pptx en guarani boliviano latinoBESTTech1
 
Principales Retos Demográficos de Puerto Rico
Principales Retos Demográficos de Puerto RicoPrincipales Retos Demográficos de Puerto Rico
Principales Retos Demográficos de Puerto RicoRaúl Figueroa
 
PLAN ANUAL DE PROYECTO 2020. para mejorar
PLAN ANUAL DE PROYECTO 2020. para mejorarPLAN ANUAL DE PROYECTO 2020. para mejorar
PLAN ANUAL DE PROYECTO 2020. para mejorarCelesteRolon2
 
Cesar Vilchis Vieyra Cesar Vilchis Vieyra
Cesar Vilchis Vieyra  Cesar Vilchis VieyraCesar Vilchis Vieyra  Cesar Vilchis Vieyra
Cesar Vilchis Vieyra Cesar Vilchis Vieyraestudiantes2010
 
Las marcas automotrices con más ventas de vehículos (2024).pdf
Las marcas automotrices con más ventas de vehículos (2024).pdfLas marcas automotrices con más ventas de vehículos (2024).pdf
Las marcas automotrices con más ventas de vehículos (2024).pdfJC Díaz Herrera
 
EXPOSICION. PROCEOS SAW SEMIATUMATIZADO,
EXPOSICION. PROCEOS SAW SEMIATUMATIZADO,EXPOSICION. PROCEOS SAW SEMIATUMATIZADO,
EXPOSICION. PROCEOS SAW SEMIATUMATIZADO,LANZAPIANDAJOSEANDRE
 
Porcentaje de población blanca europea en Europa Occidental (1923-2024).pdf
Porcentaje de población blanca europea en Europa Occidental (1923-2024).pdfPorcentaje de población blanca europea en Europa Occidental (1923-2024).pdf
Porcentaje de población blanca europea en Europa Occidental (1923-2024).pdfJC Díaz Herrera
 
INFORME FINAL ESTADISTICA DESCRIPTIVA E INFERENCIAL
INFORME FINAL ESTADISTICA DESCRIPTIVA E INFERENCIALINFORME FINAL ESTADISTICA DESCRIPTIVA E INFERENCIAL
INFORME FINAL ESTADISTICA DESCRIPTIVA E INFERENCIALMANUELVILELA7
 

Recently uploaded (20)

P.P ANÁLISIS DE UN TEXTO BÍBLICO. TEMA 10.pptx
P.P ANÁLISIS DE UN TEXTO BÍBLICO. TEMA 10.pptxP.P ANÁLISIS DE UN TEXTO BÍBLICO. TEMA 10.pptx
P.P ANÁLISIS DE UN TEXTO BÍBLICO. TEMA 10.pptx
 
Adultos Mayores más de 60 años como de la población total (2024).pdf
Adultos Mayores más de 60 años como  de la población total (2024).pdfAdultos Mayores más de 60 años como  de la población total (2024).pdf
Adultos Mayores más de 60 años como de la población total (2024).pdf
 
Los primeros 60 países por IDH en el año (2024).pdf
Los primeros 60 países por IDH en el año (2024).pdfLos primeros 60 países por IDH en el año (2024).pdf
Los primeros 60 países por IDH en el año (2024).pdf
 
Letra de cambio definición y características.ppt
Letra de cambio definición y características.pptLetra de cambio definición y características.ppt
Letra de cambio definición y características.ppt
 
metodo SOAP utilizado para evaluar el estado de un paciente
metodo SOAP utilizado para evaluar el estado de un pacientemetodo SOAP utilizado para evaluar el estado de un paciente
metodo SOAP utilizado para evaluar el estado de un paciente
 
decreto 2090 de 2003.pdf actividades de alto riesgo en Colombia
decreto 2090 de 2003.pdf actividades de alto riesgo en Colombiadecreto 2090 de 2003.pdf actividades de alto riesgo en Colombia
decreto 2090 de 2003.pdf actividades de alto riesgo en Colombia
 
Perú en el ranking mundial, segun datos mineria
Perú en el ranking mundial, segun datos mineriaPerú en el ranking mundial, segun datos mineria
Perú en el ranking mundial, segun datos mineria
 
procedimiento paran la planificación en los centros educativos tipo v(multig...
procedimiento  paran la planificación en los centros educativos tipo v(multig...procedimiento  paran la planificación en los centros educativos tipo v(multig...
procedimiento paran la planificación en los centros educativos tipo v(multig...
 
EPIDEMIO CANCER PULMON resumen nnn.pptx
EPIDEMIO CANCER PULMON  resumen nnn.pptxEPIDEMIO CANCER PULMON  resumen nnn.pptx
EPIDEMIO CANCER PULMON resumen nnn.pptx
 
Alfredo Gabriel Rodriguez Yajure Tarea#1
Alfredo Gabriel Rodriguez Yajure Tarea#1Alfredo Gabriel Rodriguez Yajure Tarea#1
Alfredo Gabriel Rodriguez Yajure Tarea#1
 
Evolución de la fortuna de la familia Slim (1994-2024).pdf
Evolución de la fortuna de la familia Slim (1994-2024).pdfEvolución de la fortuna de la familia Slim (1994-2024).pdf
Evolución de la fortuna de la familia Slim (1994-2024).pdf
 
diseño de una linea de produccion de jabon liquido.pptx
diseño de una linea de produccion de jabon liquido.pptxdiseño de una linea de produccion de jabon liquido.pptx
diseño de una linea de produccion de jabon liquido.pptx
 
Conversacion.pptx en guarani boliviano latino
Conversacion.pptx en guarani boliviano latinoConversacion.pptx en guarani boliviano latino
Conversacion.pptx en guarani boliviano latino
 
Principales Retos Demográficos de Puerto Rico
Principales Retos Demográficos de Puerto RicoPrincipales Retos Demográficos de Puerto Rico
Principales Retos Demográficos de Puerto Rico
 
PLAN ANUAL DE PROYECTO 2020. para mejorar
PLAN ANUAL DE PROYECTO 2020. para mejorarPLAN ANUAL DE PROYECTO 2020. para mejorar
PLAN ANUAL DE PROYECTO 2020. para mejorar
 
Cesar Vilchis Vieyra Cesar Vilchis Vieyra
Cesar Vilchis Vieyra  Cesar Vilchis VieyraCesar Vilchis Vieyra  Cesar Vilchis Vieyra
Cesar Vilchis Vieyra Cesar Vilchis Vieyra
 
Las marcas automotrices con más ventas de vehículos (2024).pdf
Las marcas automotrices con más ventas de vehículos (2024).pdfLas marcas automotrices con más ventas de vehículos (2024).pdf
Las marcas automotrices con más ventas de vehículos (2024).pdf
 
EXPOSICION. PROCEOS SAW SEMIATUMATIZADO,
EXPOSICION. PROCEOS SAW SEMIATUMATIZADO,EXPOSICION. PROCEOS SAW SEMIATUMATIZADO,
EXPOSICION. PROCEOS SAW SEMIATUMATIZADO,
 
Porcentaje de población blanca europea en Europa Occidental (1923-2024).pdf
Porcentaje de población blanca europea en Europa Occidental (1923-2024).pdfPorcentaje de población blanca europea en Europa Occidental (1923-2024).pdf
Porcentaje de población blanca europea en Europa Occidental (1923-2024).pdf
 
INFORME FINAL ESTADISTICA DESCRIPTIVA E INFERENCIAL
INFORME FINAL ESTADISTICA DESCRIPTIVA E INFERENCIALINFORME FINAL ESTADISTICA DESCRIPTIVA E INFERENCIAL
INFORME FINAL ESTADISTICA DESCRIPTIVA E INFERENCIAL
 

Google Tag Manager para aplicaciones en android

  • 2. Mabel Rodriguez - @enielbam 2 Este manual tiene la finalidad de guiarte en la implementación de Google Tag Manager en aplicaciones desarrolladas en Android. Antes de empezar debes evaluar si tu aplicación es tan compleja y cambia constantemente o si en realidad no es un desarrollo de gran magnitud, esta pregunta es muy importante ya que si bien es cierto Google Tag manager te ayuda a administrar todos tus tags se debe tener en cuenta lo complejo de su implementación, si es un desarrollo pequeño en realidad lo mejor es utilizar directamente los tags de Google Analytics. I. Crear un contenedoren Google Tag manager 1. Para este caso ya tenemos una cuenta en GTM, por lo tanto solo debemos crear un contenedor para nuestra app: 2. En este puntose debe asignarun nombre al contenedor,que puede ser el nombre de nuestraapp,es muyimportante seleccionarparaque tipo de desarrollo se utilizará el contenedor,de noseleccionar “Android” en este paso, se deberá crear un contendor nuevo ya que esta opción no se puede cambiar una vez creado el contenedor.
  • 3. Mabel Rodriguez - @enielbam 3 3. Finalmente ya podemos trabajar en los tags: II. Data layer Para enviar valores de navegación de nuestra app, usaremos Datalayers, el concepto es el mismo de un sitio web: es un vector con valores asignados a determinadas variables. Por ejemplo, en los siguientes puntos enviaremos todos los datos mediante eventos automáticos (no confundir con eventos de Google Analytics), para luego recuperar estos valores desde el administrador de Google tag manager. La estructura de un evento GTMes: Datalater.pushEvent dataLayer.pushEvent("nombreEvento", DataLayer.mapOf("nombreVariable", valorVariable)); Donde: Variable Detalle nombreEvento Nombre de eventoque se recuperará enGoogle TagManager (noes un eventode Google Analytics) nombreVariable Nombre de la variable definida. valorVariable Valor asociado a la variable 1. Screens Al abrir cada pantalla de la aplicación incluyendo la pantalla de login si se tuviera, se debe incluir el siguiente script: Screem Tracker DataLayer dataLayer = TagManager.getInstance(context).getDataLayer(); dataLayer.pushEvent("openScreen", DataLayer.mapOf("screenName", screenName));
  • 4. Mabel Rodriguez - @enielbam 4 Donde: Variable Detalle Context Valor por defecto this screenName Nombre de la pantallaactual 2. Eventos Para el seguimientode eventosse debe implementar el script una vez completada la acción deseada: Event Tracker DataLayer dataLayer = TagManager.getInstance(Context).getDataLayer(); dataLayer.pushEvent("virtualEvent", DataLayer.mapOf("eventCategory", Categoría, "eventAction", Acción, "eventLabel", Label)); Donde: Variable Detalle Context Valor por defecto this Categoría Categoría asociada al evento Acción Acción asociada al evento Etiqueta Etiqueta asociada al evento Algunosejemplosde eventospodríanser:  Llamar  Agendar  Actualizardatos  Seleccionaralgo  Filtros  Búsqueda  Pasode nivel,etc. Se debe tenerencuenta que no es recomendable medir absolutamente todo, antes se debe definir que es lo que necesito medir y como me puede ayudar esa información al monitoreo de mis KPIs. 3. Dimensiones personalizadas Para el envío de dimensiones el script será el siguiente:
  • 5. Mabel Rodriguez - @enielbam 5 Dimensions Tracker DataLayer dataLayer = TagManager.getInstance(Context).getDataLayer(); dataLayer.pushEvent("customDimensions", DataLayer.mapOf("Dimension1", Valor1, "Dimension2", valor2)); 4. Bloqueo y excepciones La mediciónde losbloqueosy excepcionesnosayudaráamedirel númeroy el tipo de bloqueos detectados y no detectados en la aplicación. Se recomienda leer las referenciasde Google Analytics(ExcepcionesenAndroid GA) para mayor información sobre la información a enviar. La información relacionada a las excepciones se enviará mediante eventos para su configuración desde Google tag Manager. El scriptasociadoesel siguiente,se debeenviarcadavezque se detecte un bloqueo o excepción: Event Tracker DataLayer dataLayer = TagManager.getInstance(context).getDataLayer(); dataLayer.pushEvent("getException", DataLayer.mapOf("exDescription", description, "isFatal", isFatal)); Donde: Variable Detalle Context Valor por defecto this description Descripciónde la excepción (hasta 100 caracteres). Admite null. No se debe enviar nunca el mensaje de la excepción(e.getMessage()), ya que puede contener informaciónde identificación personal. isFatal true | false Indica si la excepciónera grave. true indica que sí. Medición de excepciones no detectadas Las excepciones no detectadas representan instancias en las que la aplicación ha detectado condiciones inesperadas durante la ejecución, a menudo críticas, que bloquean la aplicación. Las excepciones no detectadas se pueden enviar a Google Analyticsautomáticamente estableciendounvalor de ga_reportUncaughtExceptions o usando la clase ExceptionReporter.
  • 6. Mabel Rodriguez - @enielbam 6 Configuración automática Para enviarde formaautomáticatodas lasexcepcionesnodetectadasenlaaplicación mediante el valorde ga_reportUncaughtExceptions,se debeagregarlasiguientelínea al archivo XML de configuración: Event Tracker <bool name="ga_reportUncaughtExceptions">true</bool> III. Google Tag Manager Una vez que se han implementado los scripts en nuestra app, ya se pueden hacer las configuraciones necesarias en Google Tag Manager. 1. Primerose debenrecuperarlosvaloresde las variables que se han incluido dentro de los datalayer,paraestocrearemostantas variablescomoseanecesario,porejemplosi vemos el ejemplo del Tag de Screen views, tenemos: Screem Tracker DataLayer dataLayer = TagManager.getInstance(context).getDataLayer(); dataLayer.pushEvent("openScreen", DataLayer.mapOf("screenName", screenName)); Aquí vemosque manejamos la variable “screenName” asociada al evento “openScreen”. 2. Para recuperar el nombre de la pantalla, creamos una variable tipo Data Layer:
  • 7. Mabel Rodriguez - @enielbam 7 3. En el siguiente puntodebemos asignarunnombre anuestravariable (UA - screenName) y en el campo Data Layer Variable Name, se debe colocar el mismo nombre de la variable que se está enviando mediante el Data Layer (screenName): 4. Luegodebemoscrearel trigger o regla mediante la cual se ejecutará nuestro tag, en este caso hemos enviado los datos mediante un Push event, entonces nuestra regla será:
  • 8. Mabel Rodriguez - @enielbam 8 Esto significa que el tag (aún no creado) se ejecutara sólo cuando se ejecute un evento llamado openScreen 5. Comoya tenemoslasvariablesytriggerscreados,procedemosacrear el Tag, eneste caso será unapp view de GoogleAnalytics:
  • 9. Mabel Rodriguez - @enielbam 9 6. El nombre de este eventoserá: UA – Screen. En el segundo paso se debe ingresar el ID de Google Analytics, y escoger el tipo de track App View: 7. Ahora para enviar a Google Analytics el nombre de la pantalla se debe configurar el parámetro Field: ScreeenName y asignarle el valor de la variable que acabamos de recuperar:
  • 10. Mabel Rodriguez - @enielbam 10 8. Finalmentedebemosasignarla regla de ejecución de este Tag, elegimos Custom Trigger:
  • 11. Mabel Rodriguez - @enielbam 11 9. Se abrirá una ventana con todas los triggers que hemos configurado previamente, y seleccionamos el trigger EV – openScreen, que creamos en el paso 4 y guardamos el tag: El proceso para el envio de eventos, transacciones, dimensiones u otro tag es similar al descrito anteriormente, solo se debe seleccionar el tipo de track y enviar los valores necesarios.
  • 12. Mabel Rodriguez - @enielbam 12 IV. Script Google Tag Manager: 1. Despuesde haberconfigurado todos los tags en Google Tag Manager, se debe publicar la versión actual: 2. En un segundopasose debe exportarel contendorque acabamosde crear, esto se realiza desde la pestaña Admin:
  • 13. Mabel Rodriguez - @enielbam 13 3. Por defectoel nombre del contenedoresel IDde la cuentade GTM seguidode laversión que hemosseleccionado: 4. Se debe teneren cuentaque el nombre del archivosolodebe quedarel IDdel contenedor, sin la versión: 5. Para la integración del contenedor con nuestra app, primero se debe configurar Google Play Services SDK (más información en el link). 6. Como segundo paso se debe agregar los siguientes permisos en el archivo AndroidManifest.xml
  • 14. Mabel Rodriguez - @enielbam 14 AndroidManifest.xml <!-- For TagManager SDK --> <uses-permissionandroid:name="android.permission.INTERNET" /> <uses-permissionandroid:name="android.permission.ACCESS_NETWORK_STATE" /> 7. Luego configurar el contenedor por defecto: se debe agregar el archivo binario (que exportamos enel administradorde GTM – punto2) enel repositorio del proyecto, dentro del subfolder <project-root>/res/raw. 8. InicializarGoogle TagManager, para esto se recomienda revisar la configuración según la versión de Android. a. Androidv4 https://developers.google.com/tag-manager/android/v4/ b. Donde:CONTAINER_ID= GTM–WP9BX9