Google Analytics erfasst Bildschirmübergänge und fügt Ereignissen Informationen zum aktuellen Bildschirm hinzu. So können Sie Messwerte wie Nutzer-Engagement oder Nutzerverhalten pro Bildschirm erfassen. Ein Großteil dieser Datenerhebung erfolgt automatisch. Sie können Bildschirmaufrufe aber auch manuell erfassen. Das manuelle Erfassen von Bildschirmen ist nützlich, wenn Ihre App nicht für jeden Bildschirm, den Sie erfassen möchten, eine separate UIViewController-, View- oder Activity-Klasse verwendet, z. B. in einem Spiel.
Bildschirme automatisch erfassen
Analytics erfasst automatisch einige Informationen zu Bildschirmen in Ihrer Anwendung, z. B. den Klassennamen der UIViewController- oder Activity-Klasse, die derzeit im Vordergrund ist. Bei einem Bildschirmübergang 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 getaggt. Wenn Ihre App für jeden Bildschirm einen eigenen UIViewController oder Activity verwendet, kann Analytics automatisch jeden Bildschirmübergang erfassen und einen Bericht zum Nutzer-Engagement nach Bildschirm aufschlüsseln. Wenn das nicht der Fall ist, können Sie diese Berichte trotzdem erhalten, indem Sie screen_view-Ereignisse manuell protokollieren.
Screenview-Tracking deaktivieren
Die automatische Berichterstellung für Bildschirmaufrufe kann unter iOS deaktiviert werden, indem Sie in der Info.plist-Datei FirebaseAutomaticScreenReportingEnabled auf NO (boolesch) setzen.
Unter Android müssen Sie die folgende Einstellung in der Datei AndroidManifest.xml in das Tag <application> einfügen:
<meta-data android:name="google_analytics_automatic_screen_reporting_enabled" android:value="false" />
Bildschirme manuell erfassen
Du kannst screen_view-Ereignisse manuell aufzeichnen, unabhängig davon, ob die automatische Aufzeichnung aktiviert ist. 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 Activity fest, die beim Aufruf im Vordergrund ist.
Wenn Sie das Swizzling in Ihrer App deaktiviert haben, müssen alle Bildschirmnamen manuell festgelegt werden. SwiftUI-Nutzer können das Analytics Swift Extension SDK verwenden.
Swift
Analytics.logEvent(AnalyticsEventScreenView, parameters: [AnalyticsParameterScreenName: screenName, AnalyticsParameterScreenClass: screenClass])
Objective-C
[FIRAnalytics logEventWithName:kFIREventScreenView parameters:@{kFIRParameterScreenClass: screenClass, kFIRParameterScreenName: screenName}];
Kotlin
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);
Web
import { getAnalytics, logEvent } from "firebase/analytics"; const analytics = getAnalytics(); logEvent(analytics, 'screen_view', { firebase_screen: screenName, firebase_screen_class: screenClass });
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,
},
);