آخرین نسخه پلاگین Crashlytics Gradle یک نسخه اصلی (v3.0.0) است و با حذف پشتیبانی از نسخه های پایین تر Gradle و Android Gradle، SDK را مدرن می کند. علاوه بر این، تغییرات در این نسخه مشکلات مربوط به AGP v8.1+ را حل می کند و پشتیبانی از برنامه های بومی و ساخت های سفارشی را بهبود می بخشد.
حداقل الزامات
پلاگین Crashlytics Gradle v3 دارای حداقل الزامات زیر است:
افزونه اندروید Gradle 8.1+
این افزونه را با استفاده از افزونه Android Gradle Upgrade Assistant در آخرین نسخه اندروید استودیو ارتقا دهید.پلاگین
google-services
Gradle Firebase 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
با نسخه 3 پلاگین Crashlytics Gradle، افزونه Crashlytics تغییرات شکسته زیر را دارد:
پسوند را از بلوک اندرویدی
defaultConfig
حذف کرد. در عوض، شما باید هر گونه را پیکربندی کنید.فیلد منسوخ
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
محلی.
-
مثالی برای نحوه ارتقاء افزونه
Kotlin
قبل از | buildTypes { release { configure<CrashlyticsExtension> { // ... symbolGenerator( closureOf<SymbolGenerator> { symbolGeneratorType = "breakpad" breakpadBinary = file("/PATH/TO/BREAKPAD/DUMP_SYMS") } ) } } } |
اکنون در نسخه 3 | 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") } } } } } |
اکنون در نسخه 3 | buildTypes { release { firebaseCrashlytics { // ... symbolGeneratorType "breakpad" breakpadBinary file("/PATH/TO/BREAKPAD/DUMP_SYMS") } } } |