Crashlytics Gradle प्लग इन का नया रिलीज़, एक मेजर वर्शन (v3.0.0) है. यह Gradle और Android Gradle प्लग इन के पुराने वर्शन के साथ काम नहीं करता. इससे SDK टूल को आधुनिक बनाया जाता है. इसके अलावा, इस रिलीज़ में किए गए बदलावों से AGP v8.1 और उसके बाद के वर्शन से जुड़ी समस्याएं हल हो जाती हैं. साथ ही, नेटिव ऐप्लिकेशन और पसंद के मुताबिक बनाए गए बिल्ड के लिए सहायता भी बेहतर हो जाती है.
ज़रूरी शर्तें
Crashlytics Gradle प्लग इन के वर्शन 3 के लिए, ये ज़रूरी शर्तें हैं:
Android Gradle प्लग इन 8.1 और इसके बाद के वर्शन
Android Studio के सबसे नए वर्शन पर, Android Gradle प्लग इन अपग्रेड असिस्टेंट का इस्तेमाल करके, इस प्लग इन को अपग्रेड करें.Firebase का
google-services
Gradle प्लग इन 4.4.1+
इस प्लग इन को अपग्रेड करने के लिए, अपने प्रोजेक्ट की Gradle बिल्ड फ़ाइल में सबसे नया वर्शन डालें. जैसे:
plugins { id("com.android.application") version "8.1.4" apply false id("com.google.gms.google-services") version "4.4.2" apply false ... }
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 प्लग इन के वर्शन 3 के साथ, Crashlytics एक्सटेंशन में ये बदलाव किए गए हैं:
defaultConfig
Android ब्लॉक से एक्सटेंशन हटा दिया गया. इसके बजाय, आपको हर वैरिएंट को कॉन्फ़िगर करना चाहिए.अब इस्तेमाल में नहीं होने वाले फ़ील्ड
mappingFile
को हटा दिया गया है. इसके बजाय, मर्ज की गई मैपिंग फ़ाइल अब अपने-आप उपलब्ध कराई जाती है.अब इस्तेमाल में नहीं होने वाले फ़ील्ड
strippedNativeLibsDir
को हटा दिया गया है. इसके बजाय, आपको सभी नेटिव लाइब्रेरी के लिएunstrippedNativeLibsDir
का इस्तेमाल करना चाहिए.unstrippedNativeLibsDir
फ़ील्ड को 'कुल' के तौर पर सेट किया गया.एक से ज़्यादा डायरेक्ट्री वाला उदाहरण देखना
buildTypes { release { configure<CrashlyticsExtension> { nativeSymbolUploadEnabled = true unstrippedNativeLibsDir = file("
MY/NATIVE/LIBS ") } } productFlavors { flavorDimensions += "feature" create("basic") { dimension = "feature" // ... } create("featureX") { dimension = "feature" configure<CrashlyticsExtension> { unstrippedNativeLibsDir = file("MY/FEATURE_X/LIBS ") } } } }uploadCrashlyticsSymbolFilesBasicRelease
टास्क सिर्फ़MY/NATIVE/LIBS
में सिंबल अपलोड करेगा, जबकिuploadCrashlyticsSymbolFilesFeatureXRelease
टास्क,MY/NATIVE/LIBS
औरMY/FEATURE_X/LIBS
, दोनों में सिंबल अपलोड करेगा.क्लोज़र फ़ील्ड
symbolGenerator
को दो नए टॉप लेवल फ़ील्ड से बदल दिया गया है:symbolGeneratorType
,"breakpad"
(डिफ़ॉल्ट) या"csym"
की स्ट्रिंग.breakpadBinary
, स्थानीयdump_syms
बाइनरी बदलाव की फ़ाइल.
एक्सटेंशन को अपग्रेड करने का उदाहरण
इससे पहले |
buildTypes { release { configure<CrashlyticsExtension> { // ... symbolGenerator( closureOf<SymbolGenerator> { symbolGeneratorType = "breakpad" breakpadBinary = file(" |
अब v3 में उपलब्ध है |
buildTypes { release { configure<CrashlyticsExtension> { // ... symbolGeneratorType = "breakpad" breakpadBinary = file(" |
इससे पहले |
buildTypes { release { firebaseCrashlytics { // ... symbolGenerator { breakpad { binary file(" |
अब v3 में उपलब्ध है |
buildTypes { release { firebaseCrashlytics { // ... symbolGeneratorType "breakpad" breakpadBinary file(" |