Catch up on everything announced at Firebase Summit, and learn how Firebase can help you accelerate app development and run your app with confidence. Learn More

התחל עם Firebase Crashlytics

קל לארגן דפים בעזרת אוספים אפשר לשמור ולסווג תוכן על סמך ההעדפות שלך.

התחלה מהירה זו מתארת ​​כיצד להגדיר את Firebase Crashlytics באפליקציה שלך עם הפלאגין Crashlytics Flutter, כך שתוכל לקבל דוחות קריסה מקיפים במסוף Firebase.

הגדרת Crashlytics כרוכה בשימוש גם בכלי שורת הפקודה וגם ב-IDE שלך. כדי לסיים את ההגדרה, תצטרך לאלץ לזרוק חריג בדיקה כדי לשלוח את דוח הקריסה הראשון שלך ל-Firebase.

לפני שאתה מתחיל

  1. אם עדיין לא עשית זאת, הגדר ואתחל את Firebase בפרויקט Flutter שלך.

  2. מומלץ : כדי לקבל תכונות כמו משתמשים ללא קריסות, יומני פירורי לחם והתראות מהירות, עליך להפעיל את Google Analytics בפרויקט Firebase שלך.

    כל פלטפורמות אנדרואיד ואפל הנתמכות על ידי Crashlytics (למעט watchOS) יכולות לנצל את התכונות הללו מ-Google Analytics.

    ודא ש-Google Analytics מופעל בפרויקט Firebase שלך: עבור אל > הגדרות פרויקט > כרטיסיית אינטגרציות , ולאחר מכן עקוב אחר ההוראות שעל המסך עבור Google Analytics.

שלב 1 : הוסף Crashlytics לפרויקט Flutter שלך

  1. מהשורש של פרויקט Flutter שלך, הפעל את הפקודה הבאה כדי להתקין את הפלאגין Crashlytics Flutter:

    flutter pub add firebase_crashlytics
    
  2. מספריית השורש של פרויקט Flutter שלך, הפעל את הפקודה הבאה:

    flutterfire configure
    

    הפעלת פקודה זו מבטיחה שתצורת ה-Firebase של אפליקציית Flutter שלך מעודכנת, ועבור אנדרואיד, מוסיפה לאפליקציה שלך את הפלאגין Crashlytics Gradle הנדרש.

  3. לאחר השלמת, בנה מחדש את פרויקט Flutter שלך:

    flutter run
    
  4. (אופציונלי) אם פרויקט Flutter שלך משתמש --split-debug-info (ובאופציה, בדגל --obfuscate ), עליך להשתמש ב- Firebase CLI (v.11.9.0+) כדי להעלות סמלי אנדרואיד.

    מספריית השורש של פרויקט Flutter שלך, הפעל את הפקודה הבאה:

    firebase crashlytics:symbols:upload --app=APP_ID PATH/TO/symbols

    ספריית PATH/TO /symbols היא אותה ספרייה שאתה מעביר --split-debug-info בעת בניית היישום.

שלב 2 : הגדר מטפלי קריסה

אתה יכול לתפוס אוטומטית את כל השגיאות שנזרקות במסגרת Flutter על ידי דריסת FlutterError.onError עם FirebaseCrashlytics.instance.recordFlutterFatalError :

void main() async {
  WidgetsFlutterBinding.ensureInitialized();

  await Firebase.initializeApp();

  // Pass all uncaught "fatal" errors from the framework to Crashlytics
  FlutterError.onError = FirebaseCrashlytics.instance.recordFlutterFatalError;

  runApp(MyApp());
}

כדי לתפוס שגיאות אסינכרוניות שאינן מטופלות על ידי המסגרת של Flutter, השתמש ב- PlatformDispatcher.instance.onError :

Future<void> main() async {
    WidgetsFlutterBinding.ensureInitialized();
    await Firebase.initializeApp();
    FlutterError.onError = (errorDetails) {
      FirebaseCrashlytics.instance.recordFlutterFatalError(errorDetails);
    };
    // Pass all uncaught asynchronous errors that aren't handled by the Flutter framework to Crashlytics
    PlatformDispatcher.instance.onError = (error, stack) {
      FirebaseCrashlytics.instance.recordError(error, stack, fatal: true);
      return true;
    };
    runApp(MyApp());

}

לדוגמאות לטיפול בסוגים אחרים של שגיאות, ראה התאמה אישית של דוחות קריסה .

שלב 3 : כפה קריסת בדיקה כדי לסיים את ההגדרה

כדי לסיים את הגדרת Crashlytics ולראות נתונים ראשוניים בלוח המחוונים של Crashlytics של קונסולת Firebase, עליך לאלץ לזרוק חריג בדיקה.

  1. הוסף קוד לאפליקציה שלך שבו תוכל להשתמש כדי לאלץ לזרוק חריג בדיקה.

    אם הוספת מטפל בשגיאות שקורא ל- FirebaseCrashlytics.instance.recordError(error, stack, fatal: true) ל- Zone ברמה העליונה, תוכל להשתמש בקוד הבא כדי להוסיף לחצן לאפליקציה שלך, שכאשר לוחצים עליו, זורק חריג מבחן:

    TextButton(
        onPressed: () => throw Exception(),
        child: const Text("Throw Test Exception"),
    ),
    
  2. בנה והפעל את האפליקציה שלך.

  3. הכריח את חריג הבדיקה להיזרק כדי לשלוח את הדוח הראשון של האפליקציה שלך:

    1. פתח את האפליקציה שלך ממכשיר הבדיקה או האמולטור שלך.

    2. באפליקציה שלך, לחץ על לחצן חריג הבדיקה שהוספת באמצעות הקוד שלמעלה.

  4. עבור אל לוח המחוונים של Crashlytics של מסוף Firebase כדי לראות את קריסת המבחן שלך.

    אם רענן את המסוף ואתה עדיין לא רואה את קריסת הבדיקה לאחר חמש דקות, הפעל רישום באגים כדי לראות אם האפליקציה שלך שולחת דוחות קריסה.


וזה הכל! Crashlytics עוקבת כעת אחר האפליקציה שלך לאיתור קריסות וב-Android, שגיאות לא קטלניות ומקרי ANR. בקר במרכז השליטה של ​​Crashlytics כדי להציג ולחקור את כל הדוחות והסטטיסטיקות שלך.

הצעדים הבאים