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 या Activity के आधार पर डिफ़ॉल्ट वैल्यू सेट करता है जो कॉल करने के समय फ़ोकस में है.
अगर आपने अपने ऐप्लिकेशन में स्विज़लिंग की सुविधा बंद की है, तो सभी स्क्रीन के नामों को मैन्युअल तौर पर सेट किया जाना चाहिए. SwiftUI का इस्तेमाल करने वाले लोग, Analytics Swift एक्सटेंशन SDK का इस्तेमाल करें.
Swift
Analytics.logEvent(AnalyticsEventScreenView, parameters: [AnalyticsParameterScreenName: screenName, AnalyticsParameterScreenClass: screenClass])
Objective-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,
},
);