قياس مشاهدات الصفحة في التطبيق

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

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

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