了解 2023 年 Google I/O 大会上介绍的 Firebase 亮点。了解详情

Android के लिए प्रदर्शन निगरानी के साथ आरंभ करें

शुरू करने से पहले

यदि आपने पहले से नहीं किया है, तो अपने Android प्रोजेक्ट में Firebase जोड़ें

चरण 1 : प्रदर्शन निगरानी एसडीके को अपने ऐप में जोड़ें

आपके द्वारा प्रदर्शन निगरानी SDK जोड़ने के बाद, Firebase स्वचालित रूप से आपके ऐप की स्क्रीन रेंडरिंग और आपके ऐप के जीवनचक्र से संबंधित डेटा (जैसे ऐप प्रारंभ समय ) के लिए डेटा एकत्र करना शुरू कर देता है। नेटवर्क अनुरोधों की निगरानी के लिए फायरबेस को सक्षम करने के लिए, आपको प्रदर्शन मॉनिटरिंग ग्रेडल प्लगइन (अगला चरण) भी जोड़ना होगा।

  1. अपने मॉड्यूल (ऐप-लेवल) ग्रैडल फ़ाइल (आमतौर पर <project>/<app-module>/build.gradle ) में, प्रदर्शन मॉनिटरिंग एंड्रॉइड लाइब्रेरी के लिए निर्भरता जोड़ें। हम लाइब्रेरी वर्ज़निंग को नियंत्रित करने के लिए Firebase Android BoM का उपयोग करने की सलाह देते हैं।

    Kotlin+KTX

    dependencies {
        // Import the BoM for the Firebase platform
        implementation platform('com.google.firebase:firebase-bom:32.1.0')
    
        // Add the dependency for the Performance Monitoring library
        // When using the BoM, you don't specify versions in Firebase library dependencies
        implementation 'com.google.firebase:firebase-perf-ktx'
    }
    

    Firebase Android BoM का उपयोग करके, आपका ऐप हमेशा Firebase Android पुस्तकालयों के संगत संस्करणों का उपयोग करेगा।

    (वैकल्पिक) BoM का उपयोग किए बिना Firebase लाइब्रेरी निर्भरताएँ जोड़ें

    यदि आप Firebase BoM का उपयोग नहीं करना चुनते हैं, तो आपको प्रत्येक Firebase लाइब्रेरी संस्करण को उसकी निर्भरता रेखा में निर्दिष्ट करना होगा।

    ध्यान दें कि यदि आप अपने ऐप में एकाधिक फायरबेस लाइब्रेरी का उपयोग करते हैं, तो हम लाइब्रेरी संस्करणों को प्रबंधित करने के लिए बीओएम का उपयोग करने की दृढ़ता से अनुशंसा करते हैं, जो सुनिश्चित करता है कि सभी संस्करण संगत हैं।

    dependencies {
        // Add the dependency for the Performance Monitoring library
        // When NOT using the BoM, you must specify versions in Firebase library dependencies
        implementation 'com.google.firebase:firebase-perf-ktx:20.3.2'
    }
    

    Java

    dependencies {
        // Import the BoM for the Firebase platform
        implementation platform('com.google.firebase:firebase-bom:32.1.0')
    
        // Add the dependency for the Performance Monitoring library
        // When using the BoM, you don't specify versions in Firebase library dependencies
        implementation 'com.google.firebase:firebase-perf'
    }
    

    Firebase Android BoM का उपयोग करके, आपका ऐप हमेशा Firebase Android पुस्तकालयों के संगत संस्करणों का उपयोग करेगा।

    (वैकल्पिक) BoM का उपयोग किए बिना Firebase लाइब्रेरी निर्भरताएँ जोड़ें

    यदि आप Firebase BoM का उपयोग नहीं करना चुनते हैं, तो आपको प्रत्येक Firebase लाइब्रेरी संस्करण को उसकी निर्भरता रेखा में निर्दिष्ट करना होगा।

    ध्यान दें कि यदि आप अपने ऐप में एकाधिक फायरबेस लाइब्रेरी का उपयोग करते हैं, तो हम लाइब्रेरी संस्करणों को प्रबंधित करने के लिए बीओएम का उपयोग करने की दृढ़ता से अनुशंसा करते हैं, जो सुनिश्चित करता है कि सभी संस्करण संगत हैं।

    dependencies {
        // Add the dependency for the Performance Monitoring library
        // When NOT using the BoM, you must specify versions in Firebase library dependencies
        implementation 'com.google.firebase:firebase-perf:20.3.2'
    }
    

  2. अपने ऐप को दोबारा कंपाइल करें।

चरण 2 : अपने ऐप में प्रदर्शन मॉनिटरिंग ग्रेडल प्लगइन जोड़ें

आपके द्वारा प्रदर्शन मॉनिटरिंग ग्रेडल प्लगइन जोड़ने के बाद, फायरबेस स्वचालित रूप से HTTP/S नेटवर्क अनुरोधों के लिए डेटा एकत्र करना शुरू कर देता है। प्लगइन आपको @AddTrace एनोटेशन का उपयोग करके कस्टम कोड ट्रेस करने में भी सक्षम बनाता है।

  1. अपने रूट-लेवल (प्रोजेक्ट-लेवल) ग्रैडल फ़ाइल ( <project>/build.gradle ) में, बिल्डस्क्रिप्ट डिपेंडेंसी के रूप में परफॉर्मेंस मॉनिटरिंग ग्रैडल प्लगइन जोड़ें:

    buildscript {
        repositories {
          // Make sure that you have the following two repositories
          google()  // Google's Maven repository
          mavenCentral()  // Maven Central repository
        }
    
        dependencies {
            ...
            // To benefit from the latest Performance Monitoring plugin features,
            // update your Android Gradle plugin dependency to at least v3.4.0
            classpath 'com.android.tools.build:gradle:7.2.0'
    
            // Make sure that you have the Google services Gradle plugin dependency
            classpath 'com.google.gms:google-services:4.3.15'
    
            // Add the dependency for the Performance Monitoring Gradle plugin
            classpath 'com.google.firebase:perf-plugin:1.4.2'
        }
    }
  2. अपने मॉड्यूल (ऐप-लेवल) ग्रैडल फ़ाइल में (आमतौर पर <project>/<app-module>/build.gradle ), प्रदर्शन मॉनिटरिंग ग्रेडल प्लगइन जोड़ें:

    plugins {
        id 'com.android.application'
    
        // Make sure that you have the Google services Gradle plugin
        id 'com.google.gms.google-services'
    
        // Add the Performance Monitoring Gradle plugin
        id 'com.google.firebase.firebase-perf'
        ...
    }
  3. अपने ऐप को दोबारा कंपाइल करें।

चरण 3 : आरंभिक डेटा प्रदर्शन के लिए प्रदर्शन ईवेंट उत्पन्न करें

जब आप सफलतापूर्वक SDK को अपने ऐप में जोड़ लेते हैं, तो Firebase ईवेंट को संसाधित करना शुरू कर देता है। यदि आप अभी भी स्थानीय रूप से विकास कर रहे हैं, तो प्रारंभिक डेटा संग्रह और प्रसंस्करण के लिए ईवेंट उत्पन्न करने के लिए अपने ऐप से सहभागिता करें।

  1. अपने ऐप को पृष्ठभूमि और अग्रभूमि के बीच कई बार स्विच करके, स्क्रीन पर नेविगेट करके और/या नेटवर्क अनुरोधों को ट्रिगर करके अपने ऐप के साथ इंटरैक्ट करके ईवेंट बनाएं।

  2. फायरबेस कंसोल के प्रदर्शन डैशबोर्ड पर जाएं। आपको अपना आरंभिक डेटा कुछ ही मिनटों में दिखाई देना चाहिए।

    यदि आप अपने प्रारंभिक डेटा का प्रदर्शन नहीं देखते हैं, तो समस्या निवारण युक्तियों की समीक्षा करें।

चरण 4 : (वैकल्पिक) प्रदर्शन घटनाओं के लिए लॉग संदेश देखें

  1. अपने ऐप की AndroidManifest.xml फ़ाइल में <meta-data> तत्व जोड़कर प्रदर्शन निगरानी के लिए डीबग लॉगिंग सक्षम करें, जैसे:

    <application>
        <meta-data
          android:name="firebase_performance_logcat_enabled"
          android:value="true" />
    </application>
    
  2. किसी भी त्रुटि संदेश के लिए अपने लॉग संदेशों की जाँच करें।

  3. प्रदर्शन निगरानी अपने लॉग संदेशों को FirebasePerformance के साथ टैग करती है। लॉगकैट फ़िल्टरिंग का उपयोग करके, आप विशेष रूप से निम्न आदेश चलाकर अवधि ट्रेस और HTTP/S नेटवर्क अनुरोध लॉगिंग देख सकते हैं:

    adb logcat -s FirebasePerformance
  4. निम्न प्रकार के लॉग की जाँच करें जो इंगित करते हैं कि प्रदर्शन मॉनिटरिंग प्रदर्शन इवेंट लॉग कर रहा है:

    • Logging trace metric: TRACE_NAME , FIREBASE_PERFORMANCE_CONSOLE_URL
    • Logging network request trace: URL
  5. Firebase कंसोल में अपना डेटा देखने के लिए URL पर क्लिक करें। डैशबोर्ड में डेटा को अपडेट होने में कुछ समय लग सकता है।

यदि आपका ऐप प्रदर्शन ईवेंट लॉग नहीं कर रहा है, तो समस्या निवारण युक्तियों की समीक्षा करें।

चरण 5 : (वैकल्पिक) विशिष्ट कोड के लिए कस्टम मॉनिटरिंग जोड़ें

अपने ऐप में विशिष्ट कोड से जुड़े प्रदर्शन डेटा की निगरानी करने के लिए, आप कस्टम कोड ट्रेस लिख सकते हैं।

एक कस्टम कोड ट्रेस के साथ, आप माप सकते हैं कि किसी विशिष्ट कार्य या कार्यों के सेट को पूरा करने में आपके ऐप को कितना समय लगता है, जैसे छवियों का एक सेट लोड करना या अपने डेटाबेस को क्वेरी करना। कस्टम कोड ट्रेस के लिए डिफ़ॉल्ट मीट्रिक इसकी अवधि होती है, लेकिन आप कैशे हिट और मेमोरी चेतावनियों जैसे कस्टम मीट्रिक भी जोड़ सकते हैं.

अपने कोड में, आप प्रदर्शन निगरानी एसडीके द्वारा प्रदान की गई एपीआई का उपयोग करके कस्टम कोड ट्रेस (और कोई वांछित कस्टम मेट्रिक्स जोड़ें) की शुरुआत और अंत को परिभाषित करते हैं। Android ऐप्स के लिए, आप @AddTrace एनोटेशन का उपयोग करके विशिष्ट विधियों की अवधि की निगरानी भी कर सकते हैं।

इन सुविधाओं के बारे में और उन्हें अपने ऐप में जोड़ने के तरीके के बारे में अधिक जानने के लिए विशिष्ट कोड के लिए निगरानी जोड़ें पर जाएं।

चरण 6 : अपना ऐप तैनात करें और फिर परिणामों की समीक्षा करें

आपके द्वारा एक या अधिक परीक्षण उपकरणों का उपयोग करके प्रदर्शन निगरानी को मान्य करने के बाद, आप अपने ऐप के अपडेट किए गए संस्करण को अपने उपयोगकर्ताओं के लिए परिनियोजित कर सकते हैं।

आप फायरबेस कंसोल के प्रदर्शन डैशबोर्ड में प्रदर्शन डेटा की निगरानी कर सकते हैं।

ज्ञात पहलु

  • प्रदर्शन मॉनिटरिंग ग्रैडल प्लगइन v1.1.0 अमरूद की निर्भरता में एक बेमेल का कारण बन सकता है, जिसके परिणामस्वरूप निम्न त्रुटि होती है:

    Error:Execution failed for task ':app:packageInstantRunResourcesDebug'.
    > com.google.common.util.concurrent.MoreExecutors.directExecutor()Ljava/util/concurrent/Executor;

    यदि आपको यह त्रुटि दिखाई देती है, तो आप इनमें से कोई एक कर सकते हैं:

    • प्रदर्शन निगरानी प्लगइन को v1.1.1 या बाद के संस्करण में अपग्रेड करें (नवीनतम संस्करण v1.4.2 है)।

    • अपने रूट-लेवल (प्रोजेक्ट-लेवल) ग्रैडल फ़ाइल ( build.gradle ) में परफॉर्मेंस मॉनिटरिंग प्लगइन डिपेंडेंसी लाइन को निम्नानुसार बदलें:

      buildscript {
        // ...
      
        dependencies {
          // ...
      
          // Replace the standard Performance Monitoring plugin dependency line, as follows:
          classpath ('com.google.firebase:perf-plugin:1.1.0') {
                      exclude group: 'com.google.guava', module: 'guava-jdk5'
          }
        }
      }
      
  • प्रदर्शन निगरानी HTTP सामग्री-लंबाई शीर्षलेख में सेट मान के आधार पर HTTP नेटवर्क अनुरोधों के लिए कुल पेलोड आकार की रिपोर्ट करती है। यह मान हमेशा सटीक नहीं हो सकता है।

  • प्रदर्शन निगरानी बहु-प्रक्रिया Android ऐप्स में केवल मुख्य प्रक्रिया का समर्थन करती है।

अगले कदम