Adicionar o Google Analytics para Firebase ao seu app instantâneo

O acompanhamento do sucesso de um app, instantâneo ou instalado, é importante para todos os desenvolvedores. Várias bibliotecas de análise são compatíveis com o Google Play Instant, incluindo Fabric Answers, Localytics e Mixpanel (links em inglês).

Se sua solução de análise atual não estiver listada ou se você achar que ela não funciona com o Google Play Instant, use o Google Analytics para Firebase como sua solução de telemetria. Nesta página, descrevemos como configurar o Google Analytics para Firebase em um projeto de app instantâneo.

Adicionar o Google Analytics para Firebase a um projeto de app instantâneo

  1. Adicione o SDK do Firebase ao app seguindo as instruções descritas no Guia explicativo do Google Analytics para Firebase.
  2. Use a versão mais recente do plug-in google-services.
  3. Coloque o arquivo google-services.json em cada módulo.
  4. Adicione a linha a seguir ao arquivo 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")
    }
    

Depois de adicionar o Google Analytics para Firebase ao seu projeto de app instantâneo, você pode usar as APIs do Google Analytics para Firebase como faria em um projeto de app instalável.

Para mais informações sobre como usar as APIs do Google Analytics para Firebase, consulte a documentação de primeiros passos do Google Analytics para Firebase.

Diferenciar os dados de apps instalados e instantâneos

Como o app instalado e o app instantâneo compartilham um nome de pacote, é recomendável diferenciar os eventos e dados coletados de cada um. Para diferenciar seus apps instantâneos e instalados no Analytics, defina uma propriedade de usuário app_type com o valor "instant" para o app instantâneo e "install" para o app instalado.

O snippet de código a seguir mostra uma atividade que recebe uma instância do Analytics e, em seguida, define uma propriedade do usuário. Observe que o código usa PackageManagerCompat.isInstantApp() no método onCreate(android.os.Bundle) para determinar o contexto do 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);
    }

}

Depois de definir a propriedade do usuário app_type, selecione um evento na guia Eventos do console do Analytics e filtre pelo valor de app_type. A projeção de dados resultante informa uma contagem para o evento especificado no seu app instantâneo ou instalado.

Para mais informações sobre como registrar e visualizar eventos no Google Analytics para Firebase, consulte Registrar eventos.

Interpretar eventos do Analytics

O Analytics permite que você acompanhe várias métricas valiosas para um app instantâneo. A tabela a seguir descreve as métricas relevantes para seu app instantâneo, incluindo o nome ou a propriedade do evento correspondente no Analytics.

Nome Valor no Analytics Definição
Visitas session_start Sessão iniciada. Esse evento é monitorado automaticamente.
Compras físicas Firebase.Event.ECOMMERCE_PURCHASE Compras físicas. É preciso acompanhar explicitamente esse evento no seu código.
Compras digitais in_app_purchase Compras digitais no app. Esse evento é monitorado automaticamente.
Tempo no app user_engagement Tempo que o app passa em primeiro plano. Esse evento é monitorado automaticamente.
Contexto do app instantâneo app_type Eventos gerados pelo app em execução no contexto instantâneo ou instalado. É preciso acompanhar explicitamente esse evento no seu código. Consulte Diferenciar entre dados de apps instalados e instantâneos acima.
Visitantes recorrentes session_start.count e app_type Público de usuários que visitam duas vezes ou mais. É necessário rastrear explicitamente o evento app_type. session_start é rastreado para você. Consulte Diferenciar dados de apps instalados e instantâneos acima.

Para mais informações sobre as constantes de eventos que podem ser coletadas no Analytics, consulte FirebaseAnalytics.Event.