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 पर, Info.plist में FirebaseAutomaticScreenReportingEnabled को NO (बूलियन) पर सेट करके, स्क्रीन व्यू की अपने-आप रिपोर्टिंग की सुविधा को बंद किया जा सकता है.
Android पर, AndroidManifest.xml फ़ाइल के <application> टैग में यह सेटिंग नेस्ट करें:
<meta-data android:name="google_analytics_automatic_screen_reporting_enabled" android:value="false" />
स्क्रीन को मैन्युअल तरीके से ट्रैक करना
screen_view इवेंट को मैन्युअल तरीके से लॉग किया जा सकता है. भले ही, अपने-आप ट्रैक होने की सुविधा चालू हो या नहीं. Apple प्लैटफ़ॉर्म के लिए, इन इवेंट को onAppear या viewDidAppear तरीकों से लॉग किया जा सकता है. वहीं, Android के लिए onResume का इस्तेमाल किया जा सकता है. screen_class सेट न होने पर, Analytics उस UIViewController या ऐक्टिविटी के आधार पर डिफ़ॉल्ट वैल्यू सेट करता है जो कॉल किए जाने के समय फ़ोकस में होती है.
अगर आपने अपने ऐप्लिकेशन में स्विज़लिंग की सुविधा बंद कर दी है, तो सभी स्क्रीन के नाम मैन्युअल तरीके से सेट करने होंगे. SwiftUI का इस्तेमाल करने वाले लोग, Analytics Swift extension SDK का इस्तेमाल करें.
Swift
Analytics.logEvent(AnalyticsEventScreenView, parameters: [AnalyticsParameterScreenName: screenName, AnalyticsParameterScreenClass: screenClass])
Objective-C
[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,
},
);