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

Crashlytics Gradle प्लग इन की हाल ही की रिलीज़, एक बड़ी वर्शन (v3.0.0) के साथ काम करता है. का इस्तेमाल कर सकते हैं. इसके अलावा, इस रिलीज़ में किए गए बदलावों से 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.2" apply false
  ...
}

Groovy

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

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

Crashlytics Gradle प्लग इन के v3 वर्शन के साथ, 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")
            }
          }
        }