Funkcja Google Analytics śledzi przejścia między ekranami i dołącza do zdarzeń informacje o bieżącym ekranie, dzięki czemu możesz śledzić wskaźniki takie jak zaangażowanie użytkowników czy zachowanie użytkowników na poszczególnych ekranach. Większość tych danych jest zbierana automatycznie, ale możesz też ręcznie rejestrować wyświetlenia ekranu. Ręczne śledzenie ekranów jest przydatne, jeśli Twoja aplikacja nie używa osobnych zdarzeń UIViewController
, View
ani Activity
dla każdego ekranu, który chcesz śledzić, np. w grze.
Automatycznie śledź ekrany
Analytics automatycznie śledzi niektóre informacje o ekranach aplikacji, takie jak nazwa klasy obiektu UIViewController
lub Activity
, który jest obecnie zaznaczony. Gdy nastąpi przejście do nowego ekranu, Analyticszarejestruje zdarzenie screen_view
, które identyfikuje nowy ekran. Zdarzenia występujące na tych ekranach są automatycznie oznaczane parametrem firebase_screen_class
(np. menuViewController
lub MenuActivity
) i wygenerowanym firebase_screen_id
. Jeśli Twoja aplikacja używa osobnego UIViewController
lub Activity
dla każdego ekranu, Analytics może automatycznie śledzić każde przejście na ekran i generować raport zaangażowania użytkowników z podziałem na ekrany. Jeśli Twoja aplikacja tego nie robi, możesz nadal uzyskiwać te raporty, ręcznie rejestrując zdarzenia screen_view
.
Wyłączanie śledzenia wyświetleń
Automatyczne raportowanie screen_view można wyłączyć na iOS, ustawiając parametr FirebaseAutomaticScreenReportingEnabled
na NO
(wartość logiczna) w pliku Info.plist.
Na Androidzie umieść to ustawienie w tagu <application>
w pliku AndroidManifest.xml
:
<meta-data android:name="google_analytics_automatic_screen_reporting_enabled" android:value="false" />
Ręczne śledzenie ekranów
Możesz ręcznie rejestrować zdarzenia screen_view
niezależnie od tego, czy automatyczne śledzenie jest włączone. Możesz rejestrować te zdarzenia za pomocą metod onAppear
lub viewDidAppear
na platformach Apple oraz onResume
na Androidzie. Jeśli zasada screen_class
jest nieskonfigurowana, Analytics ustawia wartość domyślną na podstawie elementu UIViewController lub działania, które są w trakcie wywoływania.
Jeśli przesuwanie w aplikacji zostało wyłączone, wszystkie nazwy ekranów trzeba ustawiać ręcznie. Jeśli używasz interfejsu SwiftUI, użyj Analytics pakietu SDK rozszerzenia Swift.
Swift
Analytics.logEvent(AnalyticsEventScreenView, parameters: [AnalyticsParameterScreenName: screenName, AnalyticsParameterScreenClass: screenClass])
Objective-C
[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);
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,
},
);