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 possono risolvere i problemi relativi ad AGP v8.1+ e migliorare il supporto per le app native e build personalizzate.

Requisiti minimi

Crashlytics Il plug-in Gradle v3 prevede i seguenti requisiti minimi:

  • Plug-in Android per Gradle 8.1+
    Esegui l'upgrade di questo plug-in utilizzando il Assistente per l'upgrade del plug-in Android per Gradle sull'ultima versione di Android Studio.

  • Plug-in Gradle google-services di Firebase 4.4.1+
    Esegui l'upgrade di questo plug-in specificando la versione più recente nel Gradle del tuo progetto in un file di build, in questo modo:

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 ha le seguenti modifiche che provocano un errore:

  • 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 usare unstrippedNativeLibsDir per tutte le librerie native.

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

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

    • symbolGeneratorType, una stringa "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 v3
        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")
            }
          }
        }