Con iOS y Androide contenedores disponibles para Administrador de etiquetas de GoogleEs tentador añadir GTM como integración en una configuración de Firebase existente para tus aplicaciones. También es una buena manera de familiarizarse con Firebase en primer lugar, ya que tiene una gran cantidad de funciones Para facilitar el desarrollo de aplicaciones.
Además, con la llegada de Aplicación + InternetHay aún más incentivos para integrar su aplicación con Firebase.
Agregar Google Tag Supervisor es básicamente una dependencia adicional, e incluso si el conjunto de funciones en este momento No es demasiado espectacular, me sorprendería si cosas como Plantillas personalizadas no llegarían al móvil en algún momento.
En este artículo, te mostraré un truco sencillo para mantener sincronizados los contenedores de Google Tag Supervisor para iOS y Android. Comparten la misma funcionalidad básica, por lo que Exportando e importando El intercambio de contenedores entre las dos plataformas es bastante fluido. Sin embargo, hay algunos problemas de compatibilidad que se deben solucionar antes de transferir los datos entre plataformas.
X
El boletín informativo de Simmer
Suscríbete a la Boletín informativo de Simmer ¡Para recibir las últimas noticias y contenidos de Simo Ahava en tu bandeja de entrada de correo electrónico!
Consejo 110: Mantenga sincronizados los contenedores GTM de iOS y Android
En primer lugar, esto será no trabajar con contenedores GTM heredados. Los contenedores debe sea Firebase (es decir, la última versión de Google Tag Supervisor para aplicaciones).
Para sincronizar los contenedores, necesitas: exportar el JSON del espacio de trabajo de la fuente, y importar en el objetivo. Puedes leer este Instrucción para aprender sobre importación y exportación en normal.
Modificar la clave usageContext
Si desea que la importación/exportación funcione en todas las plataformas (de Android a iOS o viceversa), hay un valor de parámetro que debe cambiar en el JSON. Hay una clave denominada containerVersion.container.usageContext
que necesitas editar. Así es como se ve en Android:
{
"exportFormatVersion": 2,
"exportTime": "2020-03-13 07:15:59",
"containerVersion": {
...
"container": {
...
"usageContext": (
"ANDROID_SDK_5"
),
...
},
...
}
}
Con iOS es casi lo mismo, excepto que el valor es ("IOS_SDK_5")
.
Entonces, si quieres tu Androide contenedor para trabajar iOSnecesitas cambiar el valor de ("ANDROID_SDK_5")
a ("IOS_SDK_5")
.
Si quieres tu iOS contenedor para trabajar Androidenecesitas cambiar el valor de ("IOS_SDK_5")
a ("ANDROID_SDK_5")
.
Una vez que hayas realizado esos cambios, el contenedor debería poder importarse entre las dos plataformas.
Sin embargo, hay ciertas desencadenantes y variables que solo funcionan en una plataforma pero no en la otra. Necesitas borrar estos del contenedor JSON si desea que la importación/exportación funcione.
Incompatibilidades
Una vez que hayas realizado el cambio en el capítulo anterior, es posible que veas el siguiente error al intentar importar el contenedor:
Esto se debe a que existen incompatibilidades entre algunos activadores y variables entre las dos plataformas. Las he enumerado en esta tabla:
Tipo | Nombre | Compatibilidad |
---|---|---|
Desencadenar | Excepción de la aplicación | Solo Android |
Desencadenar | Actualización de la aplicación | Solo iOS |
Desencadenar | Primera apertura | Solo iOS |
Desencadenar | Aplicación en la compra | Solo iOS |
Desencadenar | Notificación Descartar | Solo Android |
Desencadenar | Notificación Recibir | Solo Android |
Variable | ID del dispositivo | Solo Android |
Variable incorporada | Nombre de la versión de la aplicación | Solo Android |
Variable incorporada | Aplicación en la compra * | Solo iOS |
Variable incorporada | Notificación * | Solo iOS |
Si el artículo es “Solo X”, solo funcionará en ese tipo de contenedor y Debe ser eliminado desde la exportación si desea importar el JSON al otro tipo de contenedor.
Para eliminar un elemento, debes eliminarlo por completo. bloque de objeto que contiene los parámetros. El bloque comienza con {
y termina con }
Por ejemplo, si quisieras eliminar el elemento de la captura de pantalla anterior, buscarías el siguiente bloque y lo eliminarías.
{
"accountId": "23019854",
"containerId": "2750082",
"triggerId": "42",
"identify": "First Open",
"sort": "FIREBASE_FIRST_OPEN",
"fingerprint": "1584083607944"
}
Variables incorporadas son una excepción: no interrumpirán la importación o exportación, pero simplemente no aparecerán en el contenedor de destino en la lista de variables integradas. Cualquier etiqueta, disparador o variable que haga referencia a las variables integradas faltantes conservará esas referencias, lo que significa que el contenedor no se validará si intenta crear una versión o publicarla. Debe editar manualmente cada uno de estos enlaces de variables faltantes para que el contenedor funcione.
Tenga en cuenta que todo La compra dentro de la aplicación y todo Las variables de notificación integradas son solo para iOS.
Una vez que haya solucionado todas las incompatibilidades, la importación/exportación debería funcionar sin problemas.
Resumen
Es de esperar que los contenedores de iOS y Android converjan aún más en el futuro, de modo que no tengas que realizar ninguna edición manualmente para que la sincronización funcione en Google Tag Supervisor.
O, mejor aún, es de esperar que GTM gestione la importación/exportación multiplataforma con elegancia, cambiando automáticamente lo que se pueda cambiar y marcando las diferencias que requieren entrada guide claramente en la interfaz.
Dicho esto, todavía es mucho más fácil importar/exportar entre plataformas con contenedores de Firebase en comparación con lo que teníamos con los contenedores heredados de Google Tag Supervisor.
Las modificaciones que debes hacer para que la conversión funcione son bastante menores. El mayor dolor de cabeza es tratar de averiguar cómo reemplazar la funcionalidad de los elementos que no son compatibles. Por ejemplo, si tiene un disparador para Aplicación en la compra Si bien se ejecuta en iOS, no existe un activador integrado comparable en Android. Necesitaría implementar una solución personalizada para gestionar este seguimiento.
Mantener los contenedores sincronizados es más que simplemente editar el JSON. Pero saber qué cambios se deben realizar es un buen primer paso para mejorar el flujo de trabajo; por eso consideré que este artículo period útil en primer lugar.
¡Avísame en los comentarios si tienes problemas para sincronizar los contenedores en todas las plataformas!