Medición de campañas: SDK de Android versión 2 (heredado)

En este documento, se proporciona una descripción general de cómo medir campañas y fuentes de tráfico con el SDK de Google Analytics para Android v2.

Descripción general

La medición de campañas en Google Analytics puede ayudarte a mejorar el valor de tus canales de distribución, ya que habilita la atribución de campañas y fuentes de tráfico a la actividad del usuario en tu aplicación.

Hay varios tipos de medición de campañas disponibles en el SDK de Google Analytics para Android:

En las siguientes secciones, se describirá cuándo y cómo implementar cada tipo de medición de campaña en tu app.

Medición de campañas de Google Play

La medición de campañas de Google Play te permite ver qué campañas y fuentes de tráfico envían a los usuarios a descargar tu app desde Google Play Store. Recomendamos que todos los desarrolladores implementen la medición de campañas en Google Play Store.

Cómo funciona la medición de campañas de Google Play

Las mediciones de campañas de Google Play Store se basan en el uso de parámetros de campaña para pasar información de las campañas y las fuentes de tráfico a tu app en el momento en que se descarga de Google Play Store.

A continuación, se presenta una descripción completa del funcionamiento de la Medición de campañas de Google Play:

  1. Un usuario hace clic en un vínculo, desde un anuncio, un sitio web o una app, que lo dirige a la página de Google Play Store de tu app. El vínculo está etiquetado con Parámetros de la campaña.
  2. Después de que el usuario descargue e instale tu app, Google Play Store transmitirá un intent INSTALL_REFERRER en el dispositivo que incluya esos mismos parámetros de campaña.
  3. Luego, la app responderá a ese intent usando el objeto BroadcastReceiver que se proporciona a continuación, leyendo los parámetros de la campaña y usándolos para actualizar la información de la campaña de Google Analytics.

al implementar la medición de campañas en Google Play

Para implementar la medición de campañas en Google Play Store, sigue estos pasos:

1. Agrega un BroadcastReceiver nuevo al archivo AndroidManifest.xml

El siguiente BroadcastReceiver permite que tu app responda al intent INSTALL_REFERRER que transmite Google Play Store cuando se instala. Agrégala a tu archivo AndroidManifest.xml de la siguiente manera:

<!-- Used for install referral measurement-->
<service android:name="com.google.analytics.tracking.android.CampaignTrackingService"/>
<receiver android:name="com.google.analytics.tracking.android.CampaignTrackingReceiver" android:exported="true">
  <intent-filter>
    <action android:name="com.android.vending.INSTALL_REFERRER" />
  </intent-filter>
</receiver>

2. Agrega parámetros de campaña a tus vinculaciones de Google Play Store

Los parámetros de campaña se usan para pasar información sobre la campaña o la fuente de tráfico que refirió a un usuario a la página de Google Play Store de tu app a la implementación de Google Analytics de tu app.

Para obtener información sobre cómo crear una cadena de parámetro de campaña, usa el Creador de URLs de Google Play o consulta la sección de referencia Parámetros de la campaña.

Una vez que hayas creado la cadena de parámetro de tu campaña, agrégala a las URLs de Google Play Store como el valor del parámetro referrer, como en este ejemplo:

https://play.google.com/store/apps/details?id=com.example.app
&referrer=utm_source%3Dgoogle
%26utm_medium%3Dcpc
%26utm_term%3Drunning%252Bshoes
%26utm_content%3DdisplayAd1
%26utm_campaign%3Dshoe%252Bcampaign

Google Play Store solo pasará el valor del parámetro referrer a la implementación de Google Analytics de tu app, por lo que es importante asegurarte de que esté presente en los vínculos de Google Play Store.

Medición de campañas generales

La medición general de campañas se puede usar para asociar una campaña o una fuente de tráfico con un usuario después de que ya haya instalado la app.

Por ejemplo, si publicas una campaña pagada para llegar a usuarios existentes que ya instalaron tu app, puedes usar la medición general de campañas para medir qué lanzamientos de apps fueron el resultado de esa campaña.

Implementa la medición general de campañas

Si deseas establecer los valores de una campaña general, llama a setCampaign() y pasa una cadena de parámetro de campaña como argumento.

Una implementación típica podría llamar a setCampaign() cuando se inicia la app y verificar el intent que la inició para ver si hay parámetros de campaña válidos presentes:

public class SampleActivity extends Activity {

  @Override
  public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);

    // Get the intent that started this Activity.
    Intent intent = this.getIntent();
    Uri uri = intent.getData();

    // Call setContext() here so that we can access EasyTracker
    // to update campaign information before calling activityStart().
    EasyTracker.getInstance().setContext(this);

    if (intent.getData() != null) {
      EasyTracker.getTracker().setCampaign(uri.getPath());
    }
    ... // The rest of your onCreate() code.
  }

  @Override
  public void onStart() {
    super.onStart();
    EasyTracker.getInstance().activityStart(this);
    ... // The rest of your onStart() code.
  }


  @Override
  public void onStop() {
    super.onStop();
    EasyTracker.getInstance().activityStop(this);
    ... // The rest of your onStop() code.
  }
}

Medición de referencias

La medición de referencias es similar a otros tipos de medición de campañas, ya que te permite medir una fuente de referencia que inició tu app en el dispositivo de un usuario. Sin embargo, la medición de las referencias usa una cadena sencilla como "google.com" o "myOtherApp", en lugar de una cadena de parámetros de campaña.

Cuando configuras una fuente de referencia, como "google.com", la dimensión de la fuente se establece en "google.com", mientras que la dimensión del medio se establece implícitamente como "URL de referencia".

Al igual que con la medición de campañas, establecer una fuente de referencia hará que, de forma predeterminada, la siguiente llamada de envío inicie una nueva sesión.

En el siguiente fragmento de código, se da por sentado que etiquetaste los vínculos que abrirían tu app con parámetros de campaña de Google Analytics o con un parámetro referrer simple que describe la fuente de referencia. Si el parámetro referrer está presente sin otros parámetros de campaña, la información de la campaña del usuario se actualiza con la nueva fuente de referencia:

public class SampleActivity extends Activity {

  @Override
  public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);

    // Get the intent that started this Activity.
    Intent intent = this.getIntent();
    Uri uri = intent.getData();

    // Call setContext() here so that we can access EasyTracker
    // to update campaign information before activityStart() is called.
    EasyTracker.getInstance().setContext(this);

    if (uri != null) {
      if(uri.getQueryParmeter("utm_source") != null) {    // Use campaign parameters if avaialble.
        EasyTracker.getTracker().setCampaign(uri.getPath());
      } else if (uri.getQueryParameter("referrer") != null) {    // Otherwise, try to find a referrer parameter.
        EasyTracker.getTracker().setReferrer(uri.getQueryParameter("referrer"));
      }
    }
  }


  @Override
    public void onStart() {
    super.onStart();
    EasyTracker.getInstance().activityStart(this);
    ... // The rest of your onStart() code.
  }


  @Override
  public void onStop() {
    super.onStop();
    EasyTracker.getInstance().activityStop(this);
    ... // The rest of your onStop() code.
  }
}

Problemas conocidos

  • El javadoc para CampaignTrackingReceiver usa una ruta de clase incorrecta en su ejemplo de uso. Consulta Cómo implementar la medición de campañas de Google Play para conocer el uso correcto.
  • Solo se puede especificar una clase BroadcastReceiver por app. Si necesitas incorporar dos o más BroadcastReceivers de diferentes SDK, deberás crear tu propia clase BroadcastReceiver que reciba todas las transmisiones y llame al BroadcastReceivers adecuado para cada tipo de emisión.
  • Actualmente, la medición de campañas de Google Play no admite instalaciones de la Web a dispositivos iniciadas desde Play Store en la Web.

Parámetros de la campaña

Los parámetros de campaña se usan para pasar información sobre las fuentes de tráfico y las campañas que llevan usuarios a tu app.

  • En general, en la medición de una campaña, se pasa una string de parámetro de campaña sin codificación como argumento a setCampaign().
  • En las mediciones de campaña de Google Play, se agrega un parámetro referrer con una cadena de parámetro de campaña codificada como valor a cualquier URL que dirija a la página de Play Store de tu app.

El siguiente es un ejemplo de una cadena de campaña válida y sin codificación que podría usarse para la medición general de una campaña:

"utm_campaign=my_campaign&utm_source=google&utm_medium=cpc&utm_term=my_keyword&utm_content=ad_variation1"

En la siguiente tabla, se muestra una lista completa de los parámetros de campaña disponibles que se pueden usar en Google Play o en la medición general de campañas.

Parámetro Descripción Ejemplos
utm_campaign Nombre de la campaña; se usa para el análisis de palabras clave para identificar la promoción de un producto específico o una campaña estratégica utm_campaign=spring_sale
utm_source Fuente de la campaña; se usa para identificar un motor de búsqueda, un boletín informativo o cualquier otra fuente utm_source=google
utm_medium Medio de la campaña; se usa para identificar un medio, como el correo electrónico o el costo por clic (CPC) utm_medium=cpc
utm_term Término de la campaña; se utiliza con la búsqueda pagada para proporcionar las palabras clave para los anuncios utm_term=running+shoes
utm_content Contenido de la campaña; se usa para pruebas A/B y anuncios segmentados por contenido para diferenciar anuncios o vínculos que dirigen a la misma URL utm_content=logolink
utm_content=textlink
gclid Parámetro de etiquetado automático de Google Ads; se usa para medir Google Ads. Este valor se genera de forma dinámica y nunca se debe modificar.

Creador de URLs de Google Play

Usa el Creador de URLs de Google Play para generar URLs para la medición de campañas de Google Play.