Medir visualizações de tela

O Google Analytics rastreia transições de tela e anexa informações sobre a tela atual aos eventos, permitindo rastrear métricas como envolvimento ou comportamento do usuário por tela. Grande parte dessa coleta de dados acontece automaticamente, mas você também pode registrar manualmente as visualizações de tela. O rastreamento manual de telas é útil se seu aplicativo não usar um UIViewController , View ou Activity separado para cada tela que você deseja rastrear, como em um jogo.

Rastrear telas automaticamente

O Analytics rastreia automaticamente algumas informações sobre as telas do seu aplicativo, como o nome da classe do UIViewController ou Activity que está em foco no momento. Quando ocorre uma transição de tela, o Analytics registra um evento screen_view que identifica a nova tela. Os eventos que ocorrem nessas telas são automaticamente marcados com o parâmetro firebase_screen_class (por exemplo, menuViewController ou MenuActivity ) e um firebase_screen_id gerado. Se seu aplicativo usar um UIViewController ou Activity distinto para cada tela, o Analytics poderá rastrear automaticamente cada transição de tela e gerar um relatório de envolvimento do usuário dividido por tela. Caso seu aplicativo não tenha, você ainda poderá obter esses relatórios registrando manualmente os eventos screen_view .

Desativar rastreamento de visualização de tela

O relatório automático de visualização de tela pode ser desativado no iOS definindo FirebaseAutomaticScreenReportingEnabled como NO (Boolean) no Info.plist.

E no Android, aninhe a seguinte configuração na tag <application> do arquivo AndroidManifest.xml :

<meta-data android:name="google_analytics_automatic_screen_reporting_enabled" android:value="false" />

Rastrear telas manualmente

Você pode registrar manualmente eventos screen_view independentemente de o rastreamento automático estar ativado ou não. Você pode registrar esses eventos nos métodos onAppear ou viewDidAppear para plataformas Apple e onResume para Android. Quando screen_class não está definido, o Analytics define um valor padrão com base no UIViewController ou Activity que está em foco quando a chamada é feita.

Se você desativou o swizzling em seu aplicativo, todos os nomes de tela deverão ser definidos manualmente. Para usuários do SwiftUI, use a extensão SDK do Analytics Swift .

Rápido

Observação: este produto Firebase não está disponível no destino macOS.
Analytics.logEvent(AnalyticsEventScreenView,
                   parameters: [AnalyticsParameterScreenName: screenName,
                                AnalyticsParameterScreenClass: screenClass])

Objetivo-C

Observação: este produto Firebase não está disponível no destino macOS.
[FIRAnalytics logEventWithName:kFIREventScreenView
                    parameters:@{kFIRParameterScreenClass: screenClass,
                                 kFIRParameterScreenName: screenName}];

Kotlin+KTX

firebaseAnalytics.logEvent(FirebaseAnalytics.Event.SCREEN_VIEW) {
    param(FirebaseAnalytics.Param.SCREEN_NAME, screenName)
    param(FirebaseAnalytics.Param.SCREEN_CLASS, "MainActivity")
}

Java

Bundle bundle = new Bundle();
bundle.putString(FirebaseAnalytics.Param.SCREEN_NAME, screenName);
bundle.putString(FirebaseAnalytics.Param.SCREEN_CLASS, "MainActivity");
mFirebaseAnalytics.logEvent(FirebaseAnalytics.Event.SCREEN_VIEW, bundle);

API modular da Web

import { getAnalytics, logEvent } from "firebase/analytics";

const analytics = getAnalytics();
logEvent(analytics, 'screen_view', {
  firebase_screen: screenName, 
  firebase_screen_class: screenClass
});

API com namespace da Web

firebase.analytics().logEvent('screen_view', {
  firebase_screen: screenName, 
  firebase_screen_class: screenClass
});

Dart

await FirebaseAnalytics.instance.logEvent(
  name: 'screen_view',
  parameters: {
    'firebase_screen': screenName,
    'firebase_screen_class': screenClass,
  },
);