قياس مشاهدات الشاشة

يتتبع 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 (Boolean) في 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 أو النشاط الذي يتم التركيز عليه عند إجراء الاستدعاء.

إذا قمت بتعطيل swizzling في تطبيقك، فيجب تعيين جميع أسماء الشاشة يدويًا. بالنسبة لمستخدمي SwiftUI، استخدم ملحق Analytics Swift SDK .

سويفت

ملاحظة: منتج Firebase هذا غير متوفر على هدف macOS.
Analytics.logEvent(AnalyticsEventScreenView,
                   parameters: [AnalyticsParameterScreenName: screenName,
                                AnalyticsParameterScreenClass: screenClass])

ج موضوعية

ملاحظة: منتج 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);

واجهة برمجة تطبيقات الويب المعيارية

import { getAnalytics, logEvent } from "firebase/analytics";

const analytics = getAnalytics();
logEvent(analytics, 'screen_view', {
  firebase_screen: screenName, 
  firebase_screen_class: screenClass
});

واجهة برمجة تطبيقات مساحة اسم الويب

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