Google Analytics تغییرات صفحه را ردیابی می کند و اطلاعات مربوط به صفحه فعلی را به رویدادها پیوست می کند و به شما امکان می دهد معیارهایی مانند تعامل کاربر یا رفتار کاربر در هر صفحه را ردیابی کنید. بیشتر این جمعآوری دادهها بهطور خودکار انجام میشود، اما میتوانید بهطور دستی نماهای صفحه را ثبت کنید. اگر برنامه شما از UIViewController
، View
یا Activity
جداگانه برای هر صفحهای که ممکن است بخواهید ردیابی کنید، مانند یک بازی، استفاده نمیکند، ردیابی دستی صفحهها مفید است.
ردیابی خودکار صفحه نمایش
Analytics به طور خودکار برخی از اطلاعات مربوط به صفحههای برنامه شما را ردیابی میکند، مانند نام کلاس UIViewController
یا Activity
که در حال حاضر در کانون توجه است. هنگامی که یک انتقال صفحه رخ می دهد، Analytics یک رویداد screen_view
را ثبت می کند که صفحه جدید را شناسایی می کند. رویدادهایی که در این صفحهها رخ میدهند به طور خودکار با پارامتر firebase_screen_class
(به عنوان مثال menuViewController
یا MenuActivity
) و یک firebase_screen_id
ایجاد شده برچسبگذاری میشوند. اگر برنامه شما از یک UIViewController
یا Activity
مجزا برای هر صفحه استفاده می کند، Analytics می تواند به طور خودکار هر انتقال صفحه را ردیابی کند و گزارشی از تعامل کاربر به تفکیک صفحه نمایش ایجاد کند. اگر برنامه شما اینطور نیست، همچنان میتوانید با ثبت دستی رویدادهای screen_view
، این گزارشها را دریافت کنید.
ردیابی نمایش صفحه را غیرفعال کنید
با تنظیم FirebaseAutomaticScreenReportingEnabled
روی NO
(Boolean) در Info.plist، می توان گزارش خودکار نمای صفحه را در iOS خاموش کرد.
و در 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 یا Activity تعیین میکند که هنگام برقراری تماس در کانون توجه است.
اگر Swizzling را در برنامه خود غیرفعال کرده اید، همه نام های صفحه باید به صورت دستی تنظیم شوند. برای کاربران SwiftUI، از افزونه Analytics Swift SDK استفاده کنید.
سویفت
Analytics.logEvent(AnalyticsEventScreenView, parameters: [AnalyticsParameterScreenName: screenName, AnalyticsParameterScreenClass: screenClass])
هدف-C
[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,
},
);