Crashlytics Gradle प्लग इन v3 पर अपग्रेड करें

Crashlytics Gradle प्लग इन का नया वर्शन, एक मेजर वर्शन (v3.0.0) है. साथ ही, यह SDK को आधुनिक बनाता है. इसके लिए, यह Gradle और Android Gradle प्लग इन के पुराने वर्शन के साथ काम नहीं करता. इसके अलावा, इस रिलीज़ में AGP v8.1+ से जुड़ी समस्याओं को हल किया गया है. साथ ही, नेटिव ऐप्लिकेशन और पसंद के मुताबिक बनाए गए बिल्ड के लिए बेहतर सपोर्ट उपलब्ध कराया गया है.

ज़रूरी शर्तें

Crashlytics Gradle प्लगिन v3 के लिए, ये ज़रूरी शर्तें पूरी होनी चाहिए:

  • Android Gradle प्लग इन 8.1+
    Android Studio के नए वर्शन पर, Android Gradle प्लग इन अपग्रेड असिस्टेंट का इस्तेमाल करके, इस प्लग इन को अपग्रेड करें.

  • Firebase का google-services Gradle प्लगिन 4.4.1+
    इस प्लगिन को अपग्रेड करने के लिए, अपने प्रोजेक्ट की Gradle बिल्ड फ़ाइल में नया वर्शन डालें. जैसे:

Kotlin

plugins {
  id("com.android.application") version "8.1.4" apply false
  id("com.google.gms.google-services") version "4.4.4" apply false
  ...
}

Groovy

plugins {
  id 'com.android.application' version '8.1.4' apply false
  id 'com.google.gms.google-services' version '4.4.4' apply false
  ...
}

Crashlytics एक्सटेंशन में हुए बदलाव

Crashlytics Gradle प्लगिन के तीसरे वर्शन में, Crashlytics एक्सटेंशन में ये बदलाव किए गए हैं:

  • defaultConfig Android ब्लॉक से एक्सटेंशन हटा दिया गया है. इसके बजाय, आपको हर वैरिएंट को कॉन्फ़िगर करना चाहिए.

  • अब इस्तेमाल में नहीं रहे फ़ील्ड mappingFile को हटा दिया गया है. इसके बजाय, अब मर्ज की गई मैपिंग फ़ाइल अपने-आप उपलब्ध कराई जाती है.

  • अब इस्तेमाल में नहीं रहे फ़ील्ड strippedNativeLibsDir को हटा दिया गया है. इसके बजाय, आपको सभी नेटिव लाइब्रेरी के लिए unstrippedNativeLibsDir का इस्तेमाल करना चाहिए.

  • unstrippedNativeLibsDir फ़ील्ड को कुल वैल्यू के तौर पर दिखाने के लिए बदला गया है.

  • क्लोज़र फ़ील्ड symbolGenerator को दो नए टॉप लेवल फ़ील्ड से बदल दिया गया है:

    • symbolGeneratorType, एक स्ट्रिंग है. इसकी वैल्यू "breakpad" (डिफ़ॉल्ट) या "csym" हो सकती है.
    • breakpadBinary, यह स्थानीय dump_syms बाइनरी ओवरराइड की फ़ाइल है.

एक्सटेंशन को अपग्रेड करने के तरीके का उदाहरण

Kotlin

पहले
        buildTypes {
          release {
            configure<CrashlyticsExtension> {
              // ...
              symbolGenerator(
                closureOf<SymbolGenerator> {
                  symbolGeneratorType = "breakpad"
                  breakpadBinary = file("/PATH/TO/BREAKPAD/DUMP_SYMS")
                }
              )
            }
          }
        }
      
अब v3 में उपलब्ध है
        buildTypes {
          release {
            configure<CrashlyticsExtension> {
              // ...
              symbolGeneratorType = "breakpad"
              breakpadBinary = file("/PATH/TO/BREAKPAD/DUMP_SYMS")
            }
          }
        }
      

Groovy

पहले
        buildTypes {
          release {
            firebaseCrashlytics {
              // ...
              symbolGenerator {
                breakpad {
                  binary file("/PATH/TO/BREAKPAD/DUMP_SYMS")
                }
              }
            }
          }
        }
      
अब v3 में उपलब्ध है
        buildTypes {
          release {
            firebaseCrashlytics {
              // ...
              symbolGeneratorType "breakpad"
              breakpadBinary file("/PATH/TO/BREAKPAD/DUMP_SYMS")
            }
          }
        }