كيف تتبع اخطاء تطبيقك بعد اطلاقه بشكل Release عن طريق Firebase Crashlytics وحل مشاكله في flutter

كيف تتبع اخطاء تطبيقك بعد اطلاقه بشكل Release وحل مشاكله في flutter

كيف تتبع اخطاء تطبيقك بعد اطلاقه بشكل Release وحل مشاكله في flutter

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

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


ما هو Firebase Crashlytics؟ لماذا تحتاجه؟

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


تقليل الأعطال: من خلال تتبع الأخطاء في الوقت الفعلي، يمكن للمطورين إصلاحها قبل أن تؤثر على عدد كبير من المستخدمين.

أداء محسّن: يمكنك اتخاذ قرارات أفضل من خلال فهم تأثير الأعطال على تطبيقك والأداء العام.

توفير تجربة أفضل للمستخدم: كلما قل عدد الأعطال، كانت تجربة المستخدم أفضل.


كيف تبدأ في دمج Firebase Crashlytics في Flutter؟

الخطوة 1: إعداد مشروع Firebase

قبل استخدام Firebase Crashlytics، يجب عليك إعداد مشروع Firebase وربطه بـ Flutter:


إنشاء مشروع Firebase:

انتقل إلى وحدة تحكم Firebase وقم بإنشاء مشروع جديد.

أضف تطبيقات Android وiOS إلى المشروع.

إعداد ملفات Android وiOS:


بعد إضافة التطبيق، قم بتنزيل ملف google-services.json لتطبيق Android وملف GoogleService-Info.plist لتطبيق iOS.

أضف هذه الملفات إلى المسارات المناسبة في مشروع Flutter الخاص بك.


الخطوة 2: تثبيت حزمة Firebase Crashlytics في Flutter

بعد إعداد مشروع Firebase وربطه بتطبيقك، ستحتاج إلى تثبيت حزمة firebase_crashlytics:


افتح الملف pubspec.yaml وأضف الأسطر التالية ضمن قسم التبعيات:


dependencies:

  firebase_core: latest_version

  firebase_crashlytics: latest_version


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

void main() async {
  WidgetsFlutterBinding.ensureInitialized();
  await Firebase.initializeApp();
  FlutterError.onError = FirebaseCrashlytics.instance.recordFlutterError;
PlatformDispatcher.instance.onError = (error, stack) {
  FirebaseCrashlytics.instance.recordError(error, stack);
  return true;
};
  runApp(MyApp());
}


FlutterError.onError : هي الاخطاء التي تحدث في بmain thread

PlatformDispatcher : غالبا عندما تقوم بتشغيل وظيفة من كود native


اختبار Crashlytics

للتأكد من أن Crashlytics يعمل بشكل صحيح، يمكنك إجبار التطبيق على التعطل عن طريق إضافة سطر من التعليمات البرمجية التي تسبب التعطل:


FirebaseCrashlytics.instance.crash();


كيف أقوم بتحليل تقارير Firebase Crashlytics؟

بعد إعداد Firebase Crashlytics، ستحتاج إلى معرفة كيفية استخدامه لتحليل الأعطال.


ماذا يتضمن تقرير Crashlytics؟

  1. الأسئلة الشائعة: يعرض التقرير الأعطال الأكثر شيوعًا وتأثيرها على المستخدمين.
  2. سجل الفشل: يمكنك معرفة متى حدثت حالات الفشل وعدد مرات حدوثها.
  3. تفاصيل الأجهزة: تتضمن معلومات حول نوع الجهاز وإصدار النظام وحتى حالة البطارية.
  4. المستخدمون المتأثرون: يمكنك معرفة عدد المستخدمين المتأثرين بكل عطل.


كيف يمكنني إصلاح الخطأ بناءً على التقرير؟

بمجرد التعرف على الخطأ، استخدم المعلومات الموجودة في التقرير (مثل تتبع المكدس) لتحديد موقع الخطأ في التعليمات البرمجية الخاصة بك.

حاول إعادة إنتاج العطل في بيئة التطوير لديك.

تحديث التطبيق وإرسال الإصلاحات للمستخدمين.


هل يعمل Firebase Crashlytics على Android وiOS؟

نعم، يدعم Firebase Crashlytics منصات Android وiOS. يمكنك تتبع الأخطاء على كلا النظامين من نفس المشروع في وحدة تحكم Firebase.


كيف تحصل على تقرير عن اخطاء تطبيقك ؟

يمكنك فتح حسابك في فايربيز ومنها انتقل الى crashlytics وبعدها سوف تجد الاخطاء هناك شكل مفصل وباسم الصفحه .


هل يؤثر Crashlytics على أداء التطبيق؟

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

تعليقات