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

Firebase Crashlytics . के साथ आरंभ करें

यह क्विकस्टार्ट आपके ऐप में Firebase Crashlytics SDK के साथ Firebase Crashlytics को सेट करने का तरीका बताता है ताकि आप Firebase कंसोल में व्यापक क्रैश रिपोर्ट प्राप्त कर सकें।Android के लिए Crashlytics के साथ, आपको क्रैश, गैर-घातक त्रुटियों और "एप्लिकेशन नॉट रिस्पॉन्सिंग" (ANR) त्रुटियों की रिपोर्ट मिलती है।

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

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

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

  2. अनुशंसित : क्रैश-मुक्त उपयोगकर्ता, ब्रेडक्रंब लॉग और वेलोसिटी अलर्ट जैसी सुविधाएं प्राप्त करने के लिए, आपको अपने फायरबेस प्रोजेक्ट में Google Analytics को सक्षम करना होगा।

    • यदि आपके मौजूदा Firebase प्रोजेक्ट में Google Analytics सक्षम नहीं है, तो आप Firebase कंसोल में अपनी > प्रोजेक्ट सेटिंग्स के एकीकरण टैब से Google Analytics को सक्षम कर सकते हैं।

    • यदि आप एक नया फायरबेस प्रोजेक्ट बना रहे हैं, तो प्रोजेक्ट निर्माण कार्यप्रवाह के दौरान Google Analytics को सक्षम करें।

चरण 1 : Crashlytics SDK को अपने ऐप में जोड़ें

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

Crashlytics के साथ बेहतरीन अनुभव के लिए, हम आपके Firebase प्रोजेक्ट में Google Analytics को सक्षम करने और Google Analytics के लिए Firebase SDK को अपने ऐप में जोड़ने की सलाह देते हैं।

Kotlin+KTX

dependencies {
    // Import the BoM for the Firebase platform
    implementation platform('com.google.firebase:firebase-bom:32.1.0')

    // Add the dependencies for the Crashlytics and Analytics libraries
    // When using the BoM, you don't specify versions in Firebase library dependencies
    implementation 'com.google.firebase:firebase-crashlytics-ktx'
    implementation 'com.google.firebase:firebase-analytics-ktx'
}

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

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

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

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

dependencies {
    // Add the dependencies for the Crashlytics and Analytics libraries
    // When NOT using the BoM, you must specify versions in Firebase library dependencies
    implementation 'com.google.firebase:firebase-crashlytics-ktx:18.3.7'
    implementation 'com.google.firebase:firebase-analytics-ktx:21.3.0'
}

Java

dependencies {
    // Import the BoM for the Firebase platform
    implementation platform('com.google.firebase:firebase-bom:32.1.0')

    // Add the dependencies for the Crashlytics and Analytics libraries
    // When using the BoM, you don't specify versions in Firebase library dependencies
    implementation 'com.google.firebase:firebase-crashlytics'
    implementation 'com.google.firebase:firebase-analytics'
}

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

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

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

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

dependencies {
    // Add the dependencies for the Crashlytics and Analytics libraries
    // When NOT using the BoM, you must specify versions in Firebase library dependencies
    implementation 'com.google.firebase:firebase-crashlytics:18.3.7'
    implementation 'com.google.firebase:firebase-analytics:21.3.0'
}

चरण 2 : Crashlytics Gradle प्लगइन को अपने ऐप में जोड़ें

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

    buildscript {
        repositories {
          // Make sure that you have the following two repositories
          google()  // Google's Maven repository
          mavenCentral()  // Maven Central repository
        }
    
        dependencies {
            ...
            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 Crashlytics Gradle plugin
            classpath 'com.google.firebase:firebase-crashlytics-gradle:2.9.5'
        }
    }
  2. अपने मॉड्यूल (ऐप-लेवल) ग्रैडल फ़ाइल में (आमतौर पर <project>/<app-module>/build.gradle ), Crashlytics Gradle प्लगइन जोड़ें:

    plugins {
        id 'com.android.application'
    
        // Make sure that you have the Google services Gradle plugin
        id 'com.google.gms.google-services'
    
        // Add the Crashlytics Gradle plugin
        id 'com.google.firebase.crashlytics'
        ...
    }

चरण 3 : सेटअप समाप्त करने के लिए परीक्षण क्रैश को बाध्य करें

Crashlytics की स्थापना समाप्त करने और Firebase कंसोल के Crashlytics डैशबोर्ड में प्रारंभिक डेटा देखने के लिए, आपको एक परीक्षण क्रैश को बाध्य करने की आवश्यकता है।

  1. अपने ऐप में कोड जोड़ें जिसका उपयोग आप टेस्ट क्रैश को बाध्य करने के लिए कर सकते हैं।

    आप अपने ऐप के MainActivity में निम्न कोड का उपयोग अपने ऐप में एक बटन जोड़ने के लिए कर सकते हैं, जिसे दबाए जाने पर क्रैश हो जाता है। बटन को "टेस्ट क्रैश" लेबल किया गया है।

    Kotlin+KTX

    val crashButton = Button(this)
    crashButton.text = "Test Crash"
    crashButton.setOnClickListener {
       throw RuntimeException("Test Crash") // Force a crash
    }
    
    addContentView(crashButton, ViewGroup.LayoutParams(
           ViewGroup.LayoutParams.MATCH_PARENT,
           ViewGroup.LayoutParams.WRAP_CONTENT))
    

    Java

    Button crashButton = new Button(this);
    crashButton.setText("Test Crash");
    crashButton.setOnClickListener(new View.OnClickListener() {
       public void onClick(View view) {
           throw new RuntimeException("Test Crash"); // Force a crash
       }
    });
    
    addContentView(crashButton, new ViewGroup.LayoutParams(
           ViewGroup.LayoutParams.MATCH_PARENT,
           ViewGroup.LayoutParams.WRAP_CONTENT));
    
  2. अपना ऐप बनाएं और चलाएं।

  3. अपने ऐप की पहली क्रैश रिपोर्ट भेजने के लिए टेस्ट क्रैश को बाध्य करें:

    1. अपने ऐप को अपने टेस्ट डिवाइस या एमुलेटर से खोलें।

    2. अपने ऐप में, "टेस्ट क्रैश" बटन दबाएं जिसे आपने उपरोक्त कोड का उपयोग करके जोड़ा था।

    3. आपके ऐप के क्रैश होने के बाद, इसे फिर से शुरू करें ताकि आपका ऐप फायरबेस को क्रैश रिपोर्ट भेज सके।

  4. अपना परीक्षण क्रैश देखने के लिए Firebase कंसोल के Crashlytics डैशबोर्ड पर जाएं.

    यदि आपने कंसोल को रीफ़्रेश किया है और आपको पाँच मिनट के बाद भी परीक्षण क्रैश दिखाई नहीं दे रहा है, तो यह देखने के लिए डीबग लॉगिंग सक्षम करें कि आपका ऐप क्रैश रिपोर्ट भेज रहा है या नहीं।


और बस! Crashlytics अब क्रैश, गैर-घातक त्रुटियों और ANRs के लिए आपके ऐप की निगरानी कर रहा है। अपनी सभी रिपोर्ट और आंकड़े देखने और जाँच करने के लिए Crashlytics डैशबोर्ड पर जाएँ।

अगले कदम

  • Google Play के साथ एकीकृत करें ताकि आप सीधे Crashlytics डैशबोर्ड में Google Play ट्रैक द्वारा अपने Android ऐप की क्रैश रिपोर्ट को फ़िल्टर कर सकें। यह आपको विशिष्ट बिल्ड पर अपने डैशबोर्ड को बेहतर ढंग से केंद्रित करने की अनुमति देता है।
  • Android Studio में Crashlytics डेटा देखें और फ़िल्टर करें।