Crashlytics Gradle eklentisi v3 sürümüne yükseltin

Crashlytics Gradle eklentisinin en son sürümü, Gradle ve Android Gradle eklentisinin daha düşük sürümleri için desteği bırakarak SDK'yı modernleştiren önemli bir sürümdür (v3.0.0). Ayrıca bu sürümdeki değişiklikler, AGP v8.1+ ile ilgili sorunları çözer ve yerel uygulamalar ile özelleştirilmiş derlemeler için desteği iyileştirir.

Minimum koşullar

Crashlytics Gradle eklentisi v3'ün minimum gereksinimleri şunlardır:

  • Android Gradle eklentisi 8.1+
    Bu eklentiyi, Android Studio'nun en son sürümünde Android Gradle eklentisi Yükseltme Asistanı'nı kullanarak yükseltin.

  • Firebase'in google-services Gradle eklentisi 4.4.1 veya daha yeni
    Projenizin Gradle derleme dosyasında en son sürümü belirterek bu eklentiyi yükseltin. Örneğin:

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

Crashlytics uzantısında yapılan değişiklikler

Crashlytics Gradle eklentisinin 3. sürümünde, Crashlytics uzantısında aşağıdaki zarar veren değişiklikler yapıldı:

  • Uzantı, defaultConfig android bloğundan kaldırıldı. Bunun yerine her varyantı yapılandırmanız gerekir.

  • Desteği sonlandırılan mappingFile alanı kaldırıldı. Bunun yerine, birleştirilmiş eşleme dosyası artık otomatik olarak sağlanır.

  • Desteği sonlandırılan strippedNativeLibsDir alanı kaldırıldı. Bunun yerine, tüm yerel kitaplıklar için unstrippedNativeLibsDir kullanmanız gerekir.

  • unstrippedNativeLibsDir alanı kümülatif olacak şekilde değiştirildi.

  • Kapanış alanı symbolGenerator, iki yeni üst düzey alanla değiştirildi:

    • symbolGeneratorType, "breakpad" (varsayılan) veya "csym" değerlerinden oluşan bir dize.
    • breakpadBinary, yerel dump_syms ikili geçersiz kılma dosyası.

Uzantıyı yükseltme örneği

Kotlin

Önce
        buildTypes {
          release {
            configure<CrashlyticsExtension> {
              // ...
              symbolGenerator(
                closureOf<SymbolGenerator> {
                  symbolGeneratorType = "breakpad"
                  breakpadBinary = file("/PATH/TO/BREAKPAD/DUMP_SYMS")
                }
              )
            }
          }
        }
      
Şimdi v3'te
        buildTypes {
          release {
            configure<CrashlyticsExtension> {
              // ...
              symbolGeneratorType = "breakpad"
              breakpadBinary = file("/PATH/TO/BREAKPAD/DUMP_SYMS")
            }
          }
        }
      

Groovy

Önce
        buildTypes {
          release {
            firebaseCrashlytics {
              // ...
              symbolGenerator {
                breakpad {
                  binary file("/PATH/TO/BREAKPAD/DUMP_SYMS")
                }
              }
            }
          }
        }
      
Şimdi v3'te
        buildTypes {
          release {
            firebaseCrashlytics {
              // ...
              symbolGeneratorType "breakpad"
              breakpadBinary file("/PATH/TO/BREAKPAD/DUMP_SYMS")
            }
          }
        }