מדידת צפיות במסך

Google Analytics עוקב אחרי מעברים בין מסכים ומצרף מידע על המסך הנוכחי לאירועים, וכך מאפשר לכם לעקוב אחרי מדדים כמו התעניינות המשתמשים או התנהגות המשתמשים בכל מסך. רוב איסוף הנתונים הזה מתבצע באופן אוטומטי, אבל אתם יכולים גם לתעד צפיות במסכים באופן ידני. מעקב ידני אחרי מסכים שימושי אם האפליקציה לא משתמשת ב-UIViewController, ב-View או ב-Activity נפרדים לכל מסך שרוצים לעקוב אחריו, כמו במשחק.

מעקב אוטומטי אחרי מסכים

‫Analytics עוקב באופן אוטומטי אחרי מידע מסוים על מסכים באפליקציה, כמו שם הסיווג של UIViewController או Activity שנמצאים כרגע במוקד ההתעניינות. כשמתרחש מעבר בין מסכים, Analytics מתעד אירוע screen_view שמזהה את המסך החדש. אירועים שמתרחשים במסכים האלה מתויגים באופן אוטומטי באמצעות הפרמטר firebase_screen_class (לדוגמה, menuViewController או MenuActivity) ונוצר firebase_screen_id. אם באפליקציה שלכם יש UIViewController או Activity נפרדים לכל מסך, Analytics יכול לעקוב באופן אוטומטי אחרי כל מעבר בין מסכים וליצור דוח של התעניינות המשתמשים בחלוקה לפי מסך. אם האפליקציה לא עושה זאת, עדיין תוכלו לקבל את הדוחות האלה על ידי רישום ידני של אירועי screen_view.

השבתת המעקב אחרי צפיות במסכים

כדי להשבית את הדיווח האוטומטי על צפיות במסך ב-iOS, צריך להגדיר את FirebaseAutomaticScreenReportingEnabled ל-NO (בוליאני) ב-Info.plist.

ב-Android, מקננים את ההגדרה הבאה בתג <application> של הקובץ AndroidManifest.xml:

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

מעקב ידני אחרי מסכים

אתם יכולים לתעד אירועים ב-screen_view באופן ידני, גם אם המעקב האוטומטי מופעל וגם אם לא. אפשר לתעד את האירועים האלה באמצעות השיטות onAppear או viewDidAppear בפלטפורמות של אפל, ובאמצעות השיטה onResume ב-Android. אם לא מגדירים את screen_class, הערך של Analytics נקבע כברירת מחדל לפי ה-UIViewController או ה-Activity שנמצאים במוקד כשמתבצעת הקריאה.

אם השבתתם את ה-swizzling באפליקציה, אתם צריכים להגדיר את כל שמות המסכים באופן ידני. למשתמשי SwiftUI, השתמשו ב-Analytics Swift extension SDK.

Swift

הערה: מוצר Firebase הזה לא זמין ביעד watchOS.
Analytics.logEvent(AnalyticsEventScreenView,
                   parameters: [AnalyticsParameterScreenName: screenName,
                               AnalyticsParameterScreenClass: screenClass])

Objective-C

הערה: מוצר Firebase הזה לא זמין ביעד watchOS.
[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,
  },
);