Последняя версия плагина Crashlytics Gradle — это мажорная версия (v3.0.0), которая модернизирует SDK, прекращая поддержку более ранних версий Gradle и плагина Android Gradle. Кроме того, изменения в этой версии устраняют проблемы с AGP v8.1+ и улучшают поддержку нативных приложений и кастомных сборок.
Минимальные требования
Плагин Crashlytics Gradle v3 имеет следующие минимальные требования:
- Плагин Android Gradle 8.1+ 
 Обновите этот плагин с помощью плагина Android Gradle Upgrade Assistant в последней версии Android Studio.
- Плагин Gradle для Firebase - google-services4.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
В версии 3 плагина Crashlytics Gradle расширение Crashlytics имеет следующие критические изменения:
- Расширение удалено из блока - defaultConfigandroid. Вместо этого необходимо настроить каждый вариант.
- Удалено устаревшее поле - 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") } } } |