Bildschirmaufrufe messen

Google Analytics verfolgt Bildschirmübergänge und fügt Informationen über den aktuellen Bildschirm zu Ereignissen hinzu, sodass Sie Metriken wie Benutzerinteraktion oder Benutzerverhalten pro Bildschirm verfolgen können. Ein Großteil dieser Datenerfassung erfolgt automatisch, Sie können Bildschirmansichten jedoch auch manuell protokollieren. Das manuelle Verfolgen von Bildschirmen ist nützlich, wenn Ihre App nicht für jeden Bildschirm, den Sie verfolgen möchten, beispielsweise in einem Spiel, einen separaten UIViewController , View oder Activity verwendet.

Bildschirme automatisch verfolgen

Analytics verfolgt automatisch einige Informationen zu Bildschirmen in Ihrer Anwendung, z. B. den Klassennamen des UIViewController oder Activity , die gerade im Fokus ist. Wenn ein Bildschirmübergang auftritt, protokolliert Analytics ein screen_view Ereignis, das den neuen Bildschirm identifiziert. Ereignisse, die auf diesen Bildschirmen auftreten, werden automatisch mit dem Parameter firebase_screen_class (z. B. menuViewController oder MenuActivity ) und einer generierten firebase_screen_id gekennzeichnet. Wenn Ihre App für jeden Bildschirm einen eigenen UIViewController oder eine eigene Activity verwendet, kann Analytics jeden Bildschirmübergang automatisch verfolgen und einen nach Bildschirm aufgeschlüsselten Bericht über die Benutzerinteraktion erstellen. Wenn dies bei Ihrer App nicht der Fall ist, können Sie diese Berichte trotzdem abrufen, indem Sie screen_view Ereignisse manuell protokollieren.

Deaktivieren Sie die Verfolgung der Bildschirmansicht

Die automatische Berichterstellung für Bildschirmansichten kann unter iOS deaktiviert werden, indem FirebaseAutomaticScreenReportingEnabled in der Info.plist auf NO (Boolean) gesetzt wird.

Und unter Android verschachteln Sie die folgende Einstellung im <application> -Tag der Datei AndroidManifest.xml :

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

Bildschirme manuell verfolgen

Sie können screen_view Ereignisse manuell protokollieren, unabhängig davon, ob die automatische Nachverfolgung aktiviert ist oder nicht. Sie können diese Ereignisse in den Methoden onAppear oder viewDidAppear für Apple-Plattformen und onResume für Android protokollieren. Wenn screen_class nicht festgelegt ist, legt Analytics einen Standardwert basierend auf dem UIViewController oder der Aktivität fest, die beim Aufruf im Fokus steht.

Wenn Sie Swizzling in Ihrer App deaktiviert haben, müssen alle Bildschirmnamen manuell festgelegt werden. Für SwiftUI-Benutzer verwenden Sie das Analytics Swift-Erweiterungs-SDK .

Schnell

Hinweis: Dieses Firebase-Produkt ist auf dem macOS-Ziel nicht verfügbar.
Analytics.logEvent(AnalyticsEventScreenView,
                   parameters: [AnalyticsParameterScreenName: screenName,
                                AnalyticsParameterScreenClass: screenClass])

Ziel c

Hinweis: Dieses Firebase-Produkt ist auf dem macOS-Ziel nicht verfügbar.
[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);

Modulare Web-API

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

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

Web-Namespace-API

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,
  },
);