Firebase Crashlytics का इस्तेमाल शुरू करें


इस शुरुआती लेख में, Firebase Crashlytics SDK टूल की मदद से अपने ऐप्लिकेशन में Firebase Crashlytics को सेट अप करने का तरीका बताया गया है. इससे आपको Firebase कंसोल में क्रैश की पूरी जानकारी वाली रिपोर्ट मिल सकती हैं. Android के लिए Crashlytics ऐप्लिकेशन में, क्रैश होने, नुकसान न पहुंचाने वाली गड़बड़ियों, और "ऐप्लिकेशन काम नहीं कर रहा है" (एएनआर) की गड़बड़ियों की रिपोर्ट मिलती हैं.

Crashlytics को सेट अप करने के लिए, Firebase कंसोल और IDE, दोनों में टास्क पूरे करने होंगे. जैसे, Firebase कॉन्फ़िगरेशन फ़ाइल और Crashlytics SDK टूल जोड़ना. सेटअप पूरा करने के लिए, आपको Firebase को अपनी पहली क्रैश रिपोर्ट भेजने के लिए, टेस्ट क्रैश करना होगा.

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

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

  2. सुझाव: अपने-आप ब्रेडक्रंब लॉग पाने के लिए, आपको अपने Firebase प्रोजेक्ट में Google Analytics को चालू करना होगा. इससे, ऐप्लिकेशन के बंद होने, नुकसान न पहुंचाने वाली या ANR इवेंट जैसी कार्रवाइयों को समझने में मदद मिलती है.

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

    • अगर आपको नया Firebase प्रोजेक्ट बनाना है, तो प्रोजेक्ट बनाने के वर्कफ़्लो के दौरान Google Analytics को चालू करें.

  3. पक्का करें कि आपके ऐप्लिकेशन में, कम से कम इन वर्शन की ज़रूरत हो:

    • Gradle 8.0
    • Android Gradle प्लग इन 8.1.0
    • Google services Gradle प्लग इन 4.4.1

पहला चरण: अपने ऐप्लिकेशन में Crashlytics SDK टूल जोड़ना

<project>/<app-module>/build.gradle.kts<project>/<app-module>/build.gradleCrashlytics हमारा सुझाव है कि लाइब्रेरी के वर्शन को कंट्रोल करने के लिए, Firebase Android BoM का इस्तेमाल करें.

ब्रेडक्रंब लॉग का फ़ायदा पाने के लिए, अपने ऐप्लिकेशन में Google Analytics के लिए Firebase SDK टूल भी जोड़ें. पक्का करें कि आपके Firebase प्रोजेक्ट में Google Analytics चालू हो.

dependencies {
    // Import the BoM for the Firebase platform
    implementation(platform("com.google.firebase:firebase-bom:33.6.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 लाइब्रेरी के वर्शन की जानकारी, उसकी डिपेंडेंसी लाइन में देनी होगी.

ध्यान दें कि अगर आपके ऐप्लिकेशन में एक से ज़्यादा Firebase लाइब्रेरी का इस्तेमाल किया जाता है, तो हमारा सुझाव है कि आप लाइब्रेरी के वर्शन मैनेज करने के लिए BoM का इस्तेमाल करें. इससे यह पक्का होता है कि सभी वर्शन काम करते हों.

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:19.2.1")
    implementation("com.google.firebase:firebase-analytics:22.1.2")
}
क्या आपको Kotlin के लिए कोई लाइब्रेरी मॉड्यूल चाहिए? अक्टूबर 2023 (Firebase BoM 32.5.0) से, Kotlin और Java, दोनों डेवलपर मुख्य लाइब्रेरी मॉड्यूल का इस्तेमाल कर सकते हैं. ज़्यादा जानकारी के लिए, इस पहल के बारे में अक्सर पूछे जाने वाले सवाल देखें.

दूसरा चरण: अपने ऐप्लिकेशन में Crashlytics Gradle प्लगिन जोड़ना

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

    Kotlin

    plugins {
        // Make sure that you have the AGP plugin 8.1+ dependency
        id("com.android.application") version "8.1.4" apply false
        // ...
    
        // Make sure that you have the Google services Gradle plugin 4.4.1+ dependency
        id("com.google.gms.google-services") version "4.4.2" apply false
    
        // Add the dependency for the Crashlytics Gradle plugin
        id("com.google.firebase.crashlytics") version "3.0.2" apply false
    }

    Groovy

    plugins {
        // Make sure that you have the AGP plugin 8.1+ dependency
        id 'com.android.application' version '8.1.4' apply false
        // ...
    
        // Make sure that you have the Google services Gradle plugin 4.4.1+ dependency
        id 'com.google.gms.google-services' version '4.4.2' apply false
    
        // Add the dependency for the Crashlytics Gradle plugin
        id 'com.google.firebase.crashlytics' version '3.0.2' apply false
    }
  2. अपने मॉड्यूल (ऐप्लिकेशन-लेवल) Gradle फ़ाइल (आम तौर पर <project>/<app-module>/build.gradle.kts या <project>/<app-module>/build.gradle) में, Crashlytics Gradle प्लग इन जोड़ें:

    Kotlin

    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")
    }

    Groovy

    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'
    }

तीसरा चरण: सेटअप पूरा करने के लिए, टेस्ट क्रैश को हर हाल में पूरा करें

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. ऐप्लिकेशन क्रैश होने के बाद, उसे रीस्टार्ट करें, ताकि आपका ऐप्लिकेशन Firebase को क्रैश की रिपोर्ट भेज सके.

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

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


बस इतना ही! Crashlytics अब आपके ऐप्लिकेशन के बंद होने, सामान्य गड़बड़ियों, और ANR वाली गड़बड़ियों को मॉनिटर कर रहा है. अपनी सभी रिपोर्ट और आंकड़ों को देखने और उनकी जांच करने के लिए, Crashlytics डैशबोर्ड पर जाएं.

अगले चरण

  • Google Play के साथ इंटिग्रेट करें, ताकि आप अपने Android ऐप्लिकेशन की क्रैश रिपोर्ट को Google Play ट्रैक के हिसाब से, सीधे Crashlytics डैशबोर्ड में फ़िल्टर कर सकें. इससे, अपने डैशबोर्ड को खास बिल्ड पर बेहतर तरीके से फ़ोकस किया जा सकता है.
  • Android Studio में, Crashlytics डेटा देखें और फ़िल्टर करें.
    • Android Studio में ऐप्लिकेशन क्वालिटी की अहम जानकारी (AQI) विंडो का इस्तेमाल करके, अपने कोड के साथ Crashlytics डेटा देखें. इससे, सबसे ज़्यादा समस्याओं को डीबग करने के लिए, Crashlytics डैशबोर्ड और IDE के बीच बार-बार जाने की ज़रूरत नहीं पड़ती.
    • Android Studio के दस्तावेज़ में, एक्यूआई विंडो का इस्तेमाल करने का तरीका जानें.
    • आपका सुझाव या राय पाकर हमें खुशी होगी! गड़बड़ी की शिकायत दर्ज करके, हमें एक्यूआई विंडो के बारे में सुझाव/राय दें या शिकायत करें.