Pomiar wyświetleń ekranu

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

Uwaga: ta usługa Firebase jest niedostępna w miejscu docelowym macOS.
Analytics.logEvent(AnalyticsEventScreenView,
                   parameters: [AnalyticsParameterScreenName: screenName,
                                AnalyticsParameterScreenClass: screenClass])

Objective-C

Uwaga: ta usługa Firebase jest niedostępna w miejscu docelowym 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);

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