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

הקוד 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 בפלטפורמות של Apple, ובשיטה onResume ב-Android. אם לא מגדירים את screen_class, Analytics מגדיר ערך ברירת מחדל על סמך ה-UIViewController או הפעילות שבמיקוד כשמתבצעת הקריאה.

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

Swift

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

Objective-C

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