Upgrade auf das Crashlytics Gradle-Plug-in 3

Die neueste Version des Crashlytics Gradle-Plug-ins ist eine Hauptversion (v3.0.0). Das SDK wird modernisiert, da die Unterstützung für niedrigere Versionen von Gradle und des Android-Gradle-Plug-ins eingestellt wird. Außerdem werden die Änderungen in diesem Probleme mit AGP 8.1 und höher beheben und den Support für native Apps und angepasste Builds.

Mindestanforderungen

Crashlytics Für Version 3 des Gradle-Plug-ins gelten die folgenden Mindestanforderungen:

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

  • Firebase-google-servicesGradle-Plug-in ab Version 4.4.1
    Führen Sie ein Upgrade dieses Plug-ins durch, indem Sie die neueste Version im Gradle-Plug-in Ihres Projekts angeben wie hier gezeigt:

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

Änderungen an der Erweiterung „Crashlytics

Version 3 des Gradle-Plug-ins Crashlytics hat die Crashlytics-Erweiterung die folgenden funktionsgefährdenden Änderungen:

  • Die Erweiterung wurde aus dem Android-Block defaultConfig entfernt. Stattdessen müssen Sie sollte jede Variante konfiguriert werden.

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

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

  • Das Feld „unstrippedNativeLibsDir“ wurde so geändert, dass es kumulativ ist.

  • Das Schließfeld symbolGenerator wurde durch zwei neue Felder der obersten Ebene ersetzt:

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

Beispiel für das Upgrade 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")
            }
          }
        }