Join us in person and online for Firebase Summit on October 18, 2022. Learn how Firebase can help you accelerate app development, release your app with confidence, and scale with ease. Register now

ابدأ مع Firebase Crashlytics

تنظيم صفحاتك في مجموعات يمكنك حفظ المحتوى وتصنيفه حسب إعداداتك المفضّلة.

يصف هذا Quickstart كيفية إعداد Firebase Crashlytics في تطبيقك باستخدام المكون الإضافي Crashlytics Flutter بحيث يمكنك الحصول على تقارير أعطال شاملة في وحدة تحكم Firebase.

يتضمن إعداد Crashlytics استخدام كل من أداة سطر الأوامر و IDE الخاص بك. لإنهاء الإعداد ، ستحتاج إلى فرض استثناء اختباري ليتم طرحه لإرسال تقرير التعطل الأول إلى Firebase.

قبل ان تبدأ

  1. إذا لم تكن قد قمت بذلك بالفعل ، فقم بتهيئة وتهيئة Firebase في مشروع Flutter الخاص بك.

  2. موصى به : للحصول على ميزات مثل المستخدمين الذين لم يتعرضوا للأعطال وسجلات التنقل وتنبيهات السرعة ، تحتاج إلى تمكين Google Analytics في مشروع Firebase.

    يمكن لجميع منصات Android و Apple التي تدعمها 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 محدثًا ، وبالنسبة لنظام Android ، يضيف المكون الإضافي Crashlytics Gradle المطلوب إلى تطبيقك.

  3. بمجرد الانتهاء ، أعد بناء مشروع Flutter الخاص بك:

    flutter run
    

الخطوة 2 : تكوين معالجات الأعطال

يمكنك تلقائيًا اكتشاف جميع الأخطاء التي تظهر داخل إطار عمل Flutter عن طريق تجاوز FlutterError.onError مع FirebaseCrashlytics.instance.recordFlutterFatalError :

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

  await Firebase.initializeApp();

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

  runApp(MyApp());
}

إذا كنت تستخدم مناطق ، فإن أداة معالج أخطاء المنطقة ستكتشف الأخطاء التي لم يتم اكتشافها بواسطة إطار عمل Flutter (على سبيل المثال ، في معالج onPressed على الزر):

void main() async {
  runZonedGuarded<Future<void>>(() async {
    WidgetsFlutterBinding.ensureInitialized();
    await Firebase.initializeApp();

    FlutterError.onError =
       FirebaseCrashlytics.instance.recordFlutterFatalError;

    runApp(MyApp());
  }, (error, stack) =>
    FirebaseCrashlytics.instance.recordError(error, stack, fatal: true));
}

للحصول على أمثلة حول كيفية التعامل مع الأنواع الأخرى من الأخطاء ، راجع تخصيص تقارير الأعطال .

الخطوة 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 لعرض جميع تقاريرك وإحصاءاتك والتحقيق فيها.

الخطوات التالية