Upgrade auf das Crashlytics Gradle-Plug-in 3

Die aktuelle Version des Crashlytics-Gradle-Plug-ins ist eine Hauptversion (v3.0.0). Das SDK wurde modernisiert, indem die Unterstützung für niedrigere Versionen von Gradle und des Android-Gradle-Plug-ins eingestellt wurde. Außerdem werden mit den Änderungen in diesem Release Probleme mit AGP v8.1+ behoben und die Unterstützung für native Apps und benutzerdefinierte Builds verbessert.

Mindestanforderungen

Crashlytics Für das Gradle-Plug-in v3 gelten die folgenden Mindestanforderungen:

  • Android-Gradle-Plug-in 8.1+
    Aktualisieren Sie dieses Plug-in mit dem Android-Gradle-Plug-in-Upgrade-Assistenten in der neuesten Version von Android Studio.

  • Firebase-Gradle-Plug-in 4.4.1+
    Aktualisieren Sie dieses Plug-in, indem Sie die neueste Version in der Gradle-Build-Datei Ihres Projekts angeben:google-services

Kotlin

plugins {
  id("com.android.application") version "8.1.4" apply false
  id("com.google.gms.google-services") version "4.4.3" apply false
  ...
}

Groovy

plugins {
  id 'com.android.application' version '8.1.4' apply false
  id 'com.google.gms.google-services' version '4.4.3' apply false
  ...
}

Änderungen an der Erweiterung „Crashlytics

In Version 3 des Crashlytics-Gradle-Plug-ins gibt es die folgenden wichtigen Änderungen an der Crashlytics-Erweiterung:

  • Die Erweiterung wurde aus dem Android-Block defaultConfig entfernt. Stattdessen sollten Sie jede Variante konfigurieren.

  • Das eingestellte Feld mappingFile wurde entfernt. Stattdessen wird die zusammengeführte Zuordnungsdatei jetzt automatisch bereitgestellt.

  • Das eingestellte Feld strippedNativeLibsDir wurde entfernt. Stattdessen sollten Sie unstrippedNativeLibsDir für alle nativen Bibliotheken verwenden.

  • Das Feld unstrippedNativeLibsDir wurde in ein kumulatives Feld geändert.

  • Das Feld „closure“ symbolGenerator wurde durch zwei neue Felder der obersten Ebene ersetzt:

    • symbolGeneratorType, ein String mit entweder "breakpad" (Standard) oder "csym".
    • breakpadBinary: Eine Datei mit einer lokalen dump_syms-Binärüberschreibung.

Beispiel für das Aktualisieren der Erweiterung

Kotlin

Vorher
        buildTypes {
          release {
            configure<CrashlyticsExtension> {
              // ...
              symbolGenerator(
                closureOf<SymbolGenerator> {
                  symbolGeneratorType = "breakpad"
                  breakpadBinary = file("/PATH/TO/BREAKPAD/DUMP_SYMS")
                }
              )
            }
          }
        }
      
Jetzt in Version 3
        buildTypes {
          release {
            configure<CrashlyticsExtension> {
              // ...
              symbolGeneratorType = "breakpad"
              breakpadBinary = file("/PATH/TO/BREAKPAD/DUMP_SYMS")
            }
          }
        }
      

Groovy

Vorher
        buildTypes {
          release {
            firebaseCrashlytics {
              // ...
              symbolGenerator {
                breakpad {
                  binary file("/PATH/TO/BREAKPAD/DUMP_SYMS")
                }
              }
            }
          }
        }
      
Jetzt in Version 3
        buildTypes {
          release {
            firebaseCrashlytics {
              // ...
              symbolGeneratorType "breakpad"
              breakpadBinary file("/PATH/TO/BREAKPAD/DUMP_SYMS")
            }
          }
        }