A versão mais recente do plug-in do Gradle para Crashlytics é uma das principais do Google (v3.0.0) e moderniza o SDK eliminando a compatibilidade com versões anteriores do Gradle e do Plug-in do Android para Gradle. Além disso, as mudanças nesta versão resolver problemas com o AGP v8.1+ e melhorar o suporte a apps nativos e builds personalizados.
Requisitos mínimos
O plug-in do Gradle para Crashlytics v3 tem os seguintes requisitos mínimos:
Plug-in do Android para Gradle 8.1 ou mais recente
Atualize este plug-in usando o Assistente de upgrade do Plug-in do Android para Gradle na versão mais recente do Android Studio.Plug-in
google-services
do Firebase para Gradle 4.4.1+
Faça upgrade deste plug-in especificando a versão mais recente no Gradle do seu projeto build, da seguinte forma:
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 ... }
Mudanças na extensão do Crashlytics
Com a v3 do plug-in do Gradle para Crashlytics, a extensão do Crashlytics tem as seguintes alterações interruptivas:
A extensão foi removida do bloco do Android
defaultConfig
. Em vez disso, precisa configurar cada variante.O campo descontinuado
mappingFile
foi removido. Em vez disso, o arquivo de mapeamento mesclado é fornecido automaticamente.O campo descontinuado
strippedNativeLibsDir
foi removido. Em vez disso, useunstrippedNativeLibsDir
para todas as bibliotecas nativas.O campo
unstrippedNativeLibsDir
foi mudado para ser cumulativo.O campo de interdição
symbolGenerator
foi substituído por dois novos campos de nível superior:symbolGeneratorType
, uma string de"breakpad"
(padrão) ou"csym"
:breakpadBinary
, um arquivo de uma substituição binária local dedump_syms
.
Exemplo de como fazer upgrade da extensão
Kotlin
Antes |
buildTypes { release { configure<CrashlyticsExtension> { // ... symbolGenerator( closureOf<SymbolGenerator> { symbolGeneratorType = "breakpad" breakpadBinary = file("/PATH/TO/BREAKPAD/DUMP_SYMS") } ) } } } |
Agora na v3 |
buildTypes { release { configure<CrashlyticsExtension> { // ... symbolGeneratorType = "breakpad" breakpadBinary = file("/PATH/TO/BREAKPAD/DUMP_SYMS") } } } |
Groovy
Antes |
buildTypes { release { firebaseCrashlytics { // ... symbolGenerator { breakpad { binary file("/PATH/TO/BREAKPAD/DUMP_SYMS") } } } } } |
Agora na v3 |
buildTypes { release { firebaseCrashlytics { // ... symbolGeneratorType "breakpad" breakpadBinary file("/PATH/TO/BREAKPAD/DUMP_SYMS") } } } |