Esegui l'upgrade al plug-in di Crashlytics Gradle v3

L'ultima release del plug-in Crashlytics Gradle è una versione principale (v3.0.0) e modernizza l'SDK eliminando il supporto per le versioni precedenti di Gradle e del plug-in Android per Gradle. Inoltre, le modifiche di questa release risolvono i problemi relativi ad AGP 8.1 e versioni successive e migliorano il supporto per le app native e le build personalizzate.

Requisiti minimi

Il plug-in Gradle Crashlytics versione 3 ha i seguenti requisiti minimi:

  • Plug-in Android per Gradle 8.1 e versioni successive
    Esegui l'upgrade di questo plug-in utilizzando lo strumento di assistenza per l'upgrade del plug-in Android per Gradle sulla versione più recente di Android Studio.

  • google-servicesPlug-in Gradle di Firebase 4.4.1 e versioni successive
    Esegui l'upgrade di questo plug-in specificando la versione più recente nel file di compilazione Gradle del progetto, come segue:

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
  ...
}

Modifiche all'estensione Crashlytics

Con la versione 3 del plug-in Gradle Crashlytics, l'estensione Crashlytics presenta le seguenti modifiche che comportano interruzioni:

  • L'estensione è stata rimossa dal blocco Android defaultConfig. Devi invece configurare ogni variante.

  • È stato rimosso il campo deprecato mappingFile. Ora il file di mappatura unito viene fornito automaticamente.

  • È stato rimosso il campo deprecato strippedNativeLibsDir. Dovresti invece utilizzare unstrippedNativeLibsDir per tutte le librerie native.

  • Il campo unstrippedNativeLibsDir è stato modificato in modo da essere cumulativo.

  • Il campo chiusura symbolGenerator è stato sostituito con due nuovi campi di primo livello:

    • symbolGeneratorType, una stringa di "breakpad" (valore predefinito) o "csym".
    • breakpadBinary, un file di una sostituzione binaria dump_syms locale.

Esempio di come eseguire l'upgrade dell'estensione

Kotlin

Prima
        buildTypes {
          release {
            configure<CrashlyticsExtension> {
              // ...
              symbolGenerator(
                closureOf<SymbolGenerator> {
                  symbolGeneratorType = "breakpad"
                  breakpadBinary = file("/PATH/TO/BREAKPAD/DUMP_SYMS")
                }
              )
            }
          }
        }
      
Ora nella versione 3
        buildTypes {
          release {
            configure<CrashlyticsExtension> {
              // ...
              symbolGeneratorType = "breakpad"
              breakpadBinary = file("/PATH/TO/BREAKPAD/DUMP_SYMS")
            }
          }
        }
      

Groovy

Prima
        buildTypes {
          release {
            firebaseCrashlytics {
              // ...
              symbolGenerator {
                breakpad {
                  binary file("/PATH/TO/BREAKPAD/DUMP_SYMS")
                }
              }
            }
          }
        }
      
Ora nella versione 3
        buildTypes {
          release {
            firebaseCrashlytics {
              // ...
              symbolGeneratorType "breakpad"
              breakpadBinary file("/PATH/TO/BREAKPAD/DUMP_SYMS")
            }
          }
        }