Cómo agregar Google Analytics para Firebase a tu app instantánea

Realizar un seguimiento del éxito de una app, ya sea instantánea o instalada, es importante para cada desarrollador. Varias bibliotecas de análisis son compatibles con Google Play Instant, por ejemplo Fabric Answers, Localytics y Mixpanel.

Si tu solución de estadísticas actual no aparece en la lista o si descubres que no funciona con Google Play Instant, considera usar Google Analytics para Firebase como solución de telemetría. En esta página, se describe cómo configurar Google Analytics para Firebase en un proyecto de app instantánea.

Cómo agregar Google Analytics para Firebase a un proyecto de app instantánea

  1. Para agregar el SDK de Firebase a tu app, sigue las instrucciones que se describen en la Guía de introducción de Google Analytics para Firebase.
  2. Usa la versión más reciente del complemento de google-services.
  3. Coloca el archivo google-services.json en cada módulo.
  4. Agrega la siguiente línea al archivo build.gradle de cada módulo:

    Groovy

    // android { ... }
    // dependencies { ... }
    plugins {
        id 'com.google.gms.google-services'
    }
    

    Kotlin

    // android { ... }
    // dependencies { ... }
    plugins {
        id("com.google.gms.google-services")
    }
    

Una vez que hayas agregado Google Analytics para Firebase a tu proyecto de app instantánea, puedes usar las APIs de Google Analytics para Firebase como lo harías en un proyecto de app instalable.

Si quieres obtener más información sobre cómo usar las APIs de Google Analytics para Firebase, consulta la documentación de introducción de Google Analytics para Firebase.

Cómo diferenciar entre datos de las apps instaladas y las instantáneas

Debido a que tanto la app instalada como la instantánea comparten un nombre de paquete, te recomendamos que diferencie los eventos y los datos que se recopilan de cada una. Para diferenciar las apps instaladas y las instantáneas en Analytics, configura una propiedad del usuario app_type con el valor "instant" para la app instantánea e "installed" para la instalada.

En el siguiente fragmento de código, se muestra una actividad que obtiene una instancia de Analytics y, luego, establece una propiedad del usuario. Ten en cuenta que el código usa PackageManagerCompat.isInstantApp() en el método onCreate(android.os.Bundle) para determinar el contexto de la app.

Kotlin

val STATUS_INSTALLED = "installed"
val STATUS_INSTANT = "instant"
val ANALYTICS_USER_PROP = "app_type"

private lateinit var firebaseAnalytics: FirebaseAnalytics

protected fun onCreate(savedInstanceState: Bundle?) {
    ...

    firebaseAnalytics = FirebaseAnalytics.getInstance(this)

    // Determine the current app context, either installed or instant, then
    // set the corresponding user property for Google Analytics.
    if (InstantApps.getPackageManagerCompat(this).isInstantApp()) {
        firebaseAnalytics.setUserProperty(ANALYTICS_USER_PROP, STATUS_INSTANT)
    } else {
        firebaseAnalytics.setUserProperty(ANALYTICS_USER_PROP, STATUS_INSTALLED)
    }
}

Java

final String STATUS_INSTALLED = "installed";
final String STATUS_INSTANT = "instant";
final String ANALYTICS_USER_PROP = "app_type";

private FirebaseAnalytics firebaseAnalytics;

@Override
protected void onCreate(Bundle savedInstanceState) {
    ...

    firebaseAnalytics = FirebaseAnalytics.getInstance(this);

    // Determine the current app context, either installed or instant, then
    // set the corresponding user property for Google Analytics.
    if (InstantApps.getPackageManagerCompat(this).isInstantApp()) {
        firebaseAnalytics.setUserProperty(ANALYTICS_USER_PROP, STATUS_INSTANT);
    } else {
        firebaseAnalytics.setUserProperty(ANALYTICS_USER_PROP, STATUS_INSTALLED);
    }

}

Una vez que configures la propiedad del usuario app_type, puedes seleccionar un evento en la pestaña Eventos de la consola de Analytics y, luego, filtrar el evento por el valor app_type. La proyección de datos resultante te brinda un recuento del evento especificado en tu app instantánea o instalada.

Si quieres obtener más información para registrar y ver eventos en Google Analytics para Firebase, consulta Registra eventos.

Cómo interpretar los eventos de Analytics

Analytics te permite hacer un seguimiento de una variedad de métricas valiosas para una app instantánea. En la siguiente tabla, se describen las métricas relevantes para tu app instantánea, incluido el nombre o la propiedad del evento correspondiente en Analytics.

Nombre Valor de Analytics Definición
Visitas session_start Se inició la sesión. Este evento se registra automáticamente.
Compras físicas Firebase.Event.ECOMMERCE_PURCHASE Compras físicas. Debes realizar un seguimiento explícito de este evento en tu código.
Compras digitales in_app_purchase Compras digitales directas desde la aplicación. Este evento se registra automáticamente.
Tiempo en la app user_engagement Cantidad de tiempo que la app permanece en primer plano. Este evento se registra automáticamente.
Contexto de la app instantánea app_type Eventos generados desde la app que se ejecuta en el contexto instantáneo o instalado. Debes realizar un seguimiento explícito de este evento en tu código. Consulta Cómo diferenciar entre datos de apps instaladas e instantáneas más arriba.
Visitantes que vuelven session_start.count y app_type Público de usuarios que visitan dos veces o más. Debes hacer un seguimiento explícito del evento app_type; el seguimiento de session_start se hace automáticamente. Consulta Cómo diferenciar entre datos de apps instaladas e instantáneas más arriba.

Para obtener más información sobre las constantes de los eventos que puedes recopilar en Analytics, consulta FirebaseAnalytics.Event.