توضِّح طريقة البدء السريع هذه كيفية إعداد "Firebase Crashlytics" في تطبيقك. باستخدام حزمة تطوير البرامج (SDK) Firebase Crashlytics كي تتمكّن من تلقّي أعطال شاملة في وحدة التحكم Firebase.
يتطلب إعداد "Crashlytics" تنفيذ مهام في كل من وحدة تحكّم Firebase بيئة التطوير المتكاملة (IDE) الخاصة بك (مثل إضافة ملف إعداد Firebase وCrashlytics SDK). لإنهاء عملية الإعداد، ستحتاج إلى فرض إرسال عطل تجريبي لإرسال أول إلى Firebase.
قبل البدء
أضِف Firebase إلى جهاز Apple، إذا لم يسبق لك إجراء ذلك. مشروعك. إذا لم يكن لديك تطبيق Apple، يمكنك تنزيل نموذج تطبيق.
موصى به: للحصول تلقائيًا على سجلّات شريط التنقّل لفهم إجراءات المستخدم التي تؤدي إلى أعطال أو أحداث غير فادحة أو أخطاء ANR، عليك تفعيل Google Analytics في مشروعك على Firebase.
إذا لم يكن مشروعك الحالي في Firebase يحتوي على Google Analytics مُفعَّل، يمكنك تفعيل "Google Analytics" من في علامة التبويب عمليات الدمج على
في وحدة التحكم إعدادات المشروعFirebase. إذا كنت بصدد إنشاء مشروع جديد على Firebase، فعِّل "Google Analytics". أثناء سير عمل إنشاء المشروع.
ملاحظة: إنّ سجلّات شريط التنقّل متوفّرة لجميع منصات Apple المتوافقة مع Crashlytics باستثناء نظام التشغيل WatchOS.
الخطوة 1: إضافة حزمة تطوير البرامج (SDK) Crashlytics إلى تطبيقك
يمكنك استخدام "مدير حزم Swift" لتثبيت اعتماديات Firebase وإدارتها.
- في Xcode، انتقِل إلى File (ملف) > بعد فتح مشروع التطبيق الخاص بك. إضافة حِزم
- أضِف مستودع حزمة تطوير البرامج (SDK) لمنصّات Firebase Apple عندما يُطلب منك ذلك:
- اختَر مكتبة "Crashlytics".
- للاستفادة من سجلات شريط التنقل يجب أيضًا إضافة حزمة تطوير البرامج (SDK) لمنصّة Firebase الخاصة بـ Google Analytics إلى تطبيقك. تأكَّد من تم تفعيل "إحصاءات Google" في مشروع Firebase.
- أضِف العلامة
-ObjC
إلى القسم علامات الروابط الأخرى في إعدادات إصدار هدفك. - (نظام التشغيل macOS فقط) في
Info.plist
، أضِف المفتاح.NSApplicationCrashOnExceptions
وضبطه علىYES
- عند الانتهاء، سيبدأ Xcode تلقائيًا في حل وتنزيل ملف والتبعيات في الخلفية.
https://github.com/firebase/firebase-ios-sdk.git
بعد ذلك، اضبط وحدة Firebase على النحو التالي:
استورِد وحدة Firebase في بنية
App
أوUIApplicationDelegate
:Swift
import Firebase
Objective-C
@import Firebase;
ضبط مثيل مشترك من
FirebaseApp
، يكون عادةً في حساب مفوَّض تطبيقك طريقةapplication(_:didFinishLaunchingWithOptions:)
:Swift
// Use the Firebase library to configure APIs. FirebaseApp.configure()
Objective-C
// Use the Firebase library to configure APIs. [FIRApp configure];
الخطوة 2: إعداد Xcode لتحميل ملفات dSYM تلقائيًا
لإنشاء تقارير أعطال يمكن للمستخدمين قراءتها، يحتاج Crashlytics إلى ملف ملفات رمز تصحيح الأخطاء (dSYM). توضح الخطوات التالية كيفية تهيئة Xcode لإنتاج نماذج dSYM تلقائيًا ومعالجتها وتحميل الملفات متى شئت في إنشاء تطبيقك.
افتح مساحة عمل Xcode لمشروعك، ثم حدد ملف المشروع الخاص به في التنقُّل الأيسر.
من قائمة الاستهدافات، اختَر هدف الإصدار الرئيسي.
انقر على علامة التبويب إعدادات الإصدار، ثم أكمل الخطوات التالية حتى وينتج Xcode وحدات dSYM للإنشاءات.
انقر على الكل، ثم ابحث عن
debug information format
.اضبط تنسيق معلومات تصحيح الأخطاء على
DWARF with dSYM File
لجميع وأنواع الإنشاءات.
انقر على علامة التبويب إنشاء مراحل، ثم أكمل الخطوات التالية حتى بإمكان Xcode معالجة ملفات dSYM وتحميل الملفات.
انقر على
>. مرحلة جديدة لتشغيل النص البرمجي.تأكَّد من أنّ مرحلة تشغيل النص البرمجي الجديدة هذه هي آخر إصدار لمشروعك. المرحلة؛ وبخلاف ذلك، لا يمكن لـ Crashlytics معالجة dSYM بشكل صحيح.
وسِّع القسم تشغيل النص البرمجي الجديد.
في حقل النص البرمجي (الموجود ضمن التصنيف Shell)، أضِف العنصر البرنامج النصي التالي للتشغيل.
يعالج هذا النص البرمجي ملفات dSYM لمشروعك ويحمّل الملفات إلى Crashlytics
"${BUILD_DIR%/Build/*}/SourcePackages/checkouts/firebase-ios-sdk/Crashlytics/run"
في قسم ملفات الإدخال، أضِف مسارات مواقع الملفات التالية:
${DWARF_DSYM_FOLDER_PATH}/${DWARF_DSYM_FILE_NAME}
${DWARF_DSYM_FOLDER_PATH}/${DWARF_DSYM_FILE_NAME}/Contents/Resources/DWARF/${PRODUCT_NAME}
${DWARF_DSYM_FOLDER_PATH}/${DWARF_DSYM_FILE_NAME}/Contents/Info.plist
$(TARGET_BUILD_DIR)/$(UNLOCALIZED_RESOURCES_FOLDER_PATH)/GoogleService-Info.plist
$(TARGET_BUILD_DIR)/$(EXECUTABLE_PATH)
للحصول على معلومات أكثر تفصيلاً حول ملفات dSYM وCrashlytics (بما في ذلك كيفية تحميل ملفات dSYM يدويًا)، انتقل إلى الحصول على تقارير الأعطال التي تمت إزالة تشويشها
الخطوة 3: فرض عطل في الاختبار لإنهاء عملية الإعداد
لإنهاء عملية إعداد "Crashlytics" والاطّلاع على البيانات الأولية في لوحة بيانات Crashlytics الخاصة بوحدة التحكّم Firebase، عليك فرض اختبار. والأعطال.
أضِف رمزًا إلى تطبيقك يمكنك استخدامه لفرض حدوث عطل تجريبي.
يمكنك استخدام الرمز التالي لإضافة زر إلى تطبيقك يمكن أن إلى حدوث عطل. تمت تسمية الزر باسم "اختبار العطل".
SwiftUI
Button("Crash") { fatalError("Crash was triggered") }
واجهة UIKit
Swift
import UIKit class ViewController: UIViewController { override func viewDidLoad() { super.viewDidLoad() // Do any additional setup after loading the view, typically from a nib. let button = UIButton(type: .roundedRect) button.frame = CGRect(x: 20, y: 50, width: 100, height: 30) button.setTitle("Test Crash", for: []) button.addTarget(self, action: #selector(self.crashButtonTapped(_:)), for: .touchUpInside) view.addSubview(button) } @IBAction func crashButtonTapped(_ sender: AnyObject) { let numbers = [0] let _ = numbers[1] } }
Objective-C
#import "ViewController.h" @implementation ViewController ‐ (void)viewDidLoad { [super viewDidLoad]; // Do any additional setup after loading the view, typically from a nib. UIButton* button = [UIButton buttonWithType:UIButtonTypeRoundedRect]; button.frame = CGRectMake(20, 50, 100, 30); [button setTitle:@"Test Crash" forState:UIControlStateNormal]; [button addTarget:self action:@selector(crashButtonTapped:) forControlEvents:UIControlEventTouchUpInside]; [self.view addSubview:button]; } ‐ (IBAction)crashButtonTapped:(id)sender { @[][1]; } @end
أنشِئ تطبيقك وشغِّله في Xcode مع عدم ربط برنامج تصحيح الأخطاء في Xcode.
انقر على
إنشاء، ثم تشغيل المخطط الحالي لإنشاء تطبيقك على جهاز اختباري المحاكي.انتظر إلى أن يتم تشغيل التطبيق، ثم انقر على Crashlytics.
إيقاف تشغيل المخطط أو إجراءً لإغلاق المثيل الأولي لتطبيقك. هذا الاسم الأولي يتضمن المثيل برنامج تصحيح الأخطاء الذي يتداخل مع
يمكنك فرض العطل التجريبي لإرسال تقرير الأعطال الأول لتطبيقك:
افتح تطبيقك من الشاشة الرئيسية لجهاز الاختبار أو المحاكي.
اضغط على "اختبار التعطّل" في تطبيقك الذي أضفته باستخدام الرمز أعلاه.
بعد تعطُّل تطبيقك، يمكنك تشغيله مرة أخرى من Xcode حتى يتمكّن التطبيق من إرسال تقرير الأعطال إلى Firebase.
انتقِل إلى لوحة بيانات Crashlytics Firebase للاطّلاع على العُطل التجريبي.
إذا أعدت تحميل وحدة التحكّم ولكن لم يظهر عطل الاختبار بعد ذلك بعد خمس دقائق، تفعيل ميزة تسجيل معلومات تصحيح الأخطاء لمعرفة ما إذا كان تطبيقك يرسل تقارير الأعطال.
وهذا كل ما في الأمر! تراقب ميزة "Crashlytics" الآن تطبيقك بحثًا عن أي أعطال. انتقِل إلى لوحة بيانات Crashlytics للاطّلاع عليها والتحقيق فيها. كل تقاريرك وإحصاءاتك
الخطوات التالية
- تخصيص إعداد تقرير الأعطال عن طريق إضافة خيارات إعداد التقارير والسجلات والمفاتيح وتتبع الأخطاء غير الفادحة.