Envío: SDK de Android v2 (heredado)

En este documento, se describe cómo puedes administrar el envío de datos a Google Analytics con el SDK de Google Analytics para Android v2.

Descripción general

En el SDK de Google Analytics para Android, los datos recopilados, como las visitas a una pantalla o los eventos, se almacenan de forma local en una cola antes de enviarse a los servidores de Google Analytics. El proceso por el cual estos datos (denominados aquí como “hits”) se envían desde el SDK a Google Analytics se conoce como despacho.

El despacho es exclusivo de las bibliotecas de colecciones para dispositivos móviles y está diseñado para mitigar los desafíos del acceso poco confiable a la red y la duración limitada de la batería.

Existen dos tipos de despacho:

  • Envío periódico : Envía automáticamente hits en un intervalo recurrente que especifiques de manera programática o en tu archivo analytics.xml.
  • Despacho manual : Envía hits de forma manual para enviar datos cuando te resulte conveniente (por ejemplo, cuando hay una conexión HTTP existente).

Ambos tipos de envío se producen fuera del subproceso de IU principal en la versión 2 del SDK.

En el resto de este documento, se proporcionará una descripción detallada de cada tipo de despacho y cómo implementarlos en tu app.

Despacho periódico

A medida que tu app recopila datos de Google Analytics, estos se agregan a una cola y se envían de forma periódica a Google Analytics. El envío periódico puede ocurrir cuando la app se ejecuta en primer o segundo plano.

El período de envío predeterminado es de 30 minutos. Puedes proporcionar tu propio intervalo en segundos si usas el parámetro ga_dispatchPeriod en tu archivo analytics.xml o llamas a setDispatchPeriod(int dispatchPeriodInSeconds) como en este ejemplo:

En el archivo analytics.xml, incluye lo siguiente:

<integer name="ga_dispatchPeriod">60</integer>

De manera programática, haz lo siguiente:

GAServiceManager.getInstance().setDispatchPeriod(60);

Si estableces un valor negativo, se inhabilitarán los envíos periódicos, por lo que deberás usar el envío manual si deseas enviar datos a Google Analytics. Por otro lado, configurar un valor de 0 enviará cada hit de inmediato si hay una conexión de red disponible.

Una vez que se envíen todos los hits, los envíos periódicos ingresarán en un modo de ahorro de energía y se inhabilitarán hasta que se realice otra llamada de envío.

Si un usuario pierde el acceso a la red o sale de tu app mientras aún hay hits en espera de despacho, esos hits persisten en el almacenamiento local. Se enviarán la próxima vez que se ejecute tu app y se llame al despacho.

Despacho manual

Además de depender de los envíos periódicos, puede haber ocasiones en las que desees despachar tus hits de forma manual. Por ejemplo, puedes empaquetar tus despachos con otras solicitudes HTTP que realice tu aplicación para reducir la sobrecarga.

Los hits se pueden enviar de forma manual mediante la instancia GAServiceManager:

GAServiceManager.getInstance().dispatch();