שדרוג לגרסה 3 של הפלאגין Crashlytics Gradle

הגרסה האחרונה של הפלאגין Crashlytics ל-Gradle היא גרסה ראשית (v3.0.0), והיא מעדכנת את ה-SDK על ידי הסרת התמיכה בגרסאות ישנות יותר של Gradle ושל הפלאגין של Android Gradle. בנוסף, השינויים בגרסה הזו פותרים בעיות ב-AGP מגרסה 8.1 ואילך ומשפרים את התמיכה באפליקציות מקוריות וב-builds מותאמים אישית.

דרישות מינימליות

Crashlytics הפלאגין של Gradle בגרסה 3 כולל את דרישות הסף הבאות:

  • פלאגין של Android Gradle מגרסה 8.1 ואילך
    כדי לשדרג את הפלאגין הזה, משתמשים בכלי לשדרוג הפלאגין של Android Gradle בגרסה האחרונה של Android Studio.

  • google-services הפלאגין של Gradle ב-Firebase מגרסה 4.4.1 ואילך
    כדי לשדרג את הפלאגין, מציינים את הגרסה האחרונה בקובץ ה-build של Gradle בפרויקט, באופן הבא:

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

שינויים בתוסף Crashlytics

בגרסה 3 של פלאגין Gradle ‏Crashlytics, התוסף Crashlytics כולל את השינויים הבאים שעלולים לגרום לכשל:

  • הוסר התוסף מהבלוק defaultConfig android. במקום זאת, צריך להגדיר כל וריאנט בנפרד.

  • השדה mappingFile, שיצא משימוש, הוסר. במקום זאת, קובץ המיפוי הממוזג מסופק עכשיו באופן אוטומטי.

  • השדה strippedNativeLibsDir, שיצא משימוש, הוסר. במקום זאת, צריך להשתמש ב-unstrippedNativeLibsDir לכל הספריות המקומיות.

  • השדה unstrippedNativeLibsDir השתנה למצטבר.

  • שדה הסגירה symbolGenerator הוחלף בשני שדות חדשים ברמה העליונה:

    • symbolGeneratorType, מחרוזת של "breakpad" (ברירת המחדל) או "csym".
    • breakpadBinary, קובץ של שינוי בינארי מקומי של dump_syms.

דוגמה לשדרוג התוסף

Kotlin

לפני
        buildTypes {
          release {
            configure<CrashlyticsExtension> {
              // ...
              symbolGenerator(
                closureOf<SymbolGenerator> {
                  symbolGeneratorType = "breakpad"
                  breakpadBinary = file("/PATH/TO/BREAKPAD/DUMP_SYMS")
                }
              )
            }
          }
        }
      
עכשיו בגרסה 3
        buildTypes {
          release {
            configure<CrashlyticsExtension> {
              // ...
              symbolGeneratorType = "breakpad"
              breakpadBinary = file("/PATH/TO/BREAKPAD/DUMP_SYMS")
            }
          }
        }
      

Groovy

לפני
        buildTypes {
          release {
            firebaseCrashlytics {
              // ...
              symbolGenerator {
                breakpad {
                  binary file("/PATH/TO/BREAKPAD/DUMP_SYMS")
                }
              }
            }
          }
        }
      
עכשיו בגרסה 3
        buildTypes {
          release {
            firebaseCrashlytics {
              // ...
              symbolGeneratorType "breakpad"
              breakpadBinary file("/PATH/TO/BREAKPAD/DUMP_SYMS")
            }
          }
        }