بدء استخدام "مراقبة الأداء" لمنصات Apple

قبل البدء

أضِف Firebase إلى مشروع Apple الخاص بك، في حال لم يسبق لك إجراء ذلك، .

الخطوة 1: إضافة Performance Monitoring إلى تطبيقك

بعد إضافة حزمة تطوير البرامج (SDK) لميزة Performance Monitoring، تبدأ Firebase تلقائيًا بجمع بيانات عرض شاشة تطبيقك، والبيانات المتعلّقة بمراحل نشاط تطبيقك (مثل وقت بدء التطبيق)، وبيانات طلبات الشبكة HTTP/S.

استخدِم Swift Package Manager لتثبيت التبعيات في Firebase وإدارتها.

  1. في Xcode، افتح مشروع تطبيقك وانتقِل إلى ملف (File) > إضافة حِزم (Add Packages).
  2. عندما يُطلب منك ذلك، أضِف مستودع حزمة تطوير البرامج (SDK) لمنصات Firebase Apple:
  3.   https://github.com/firebase/firebase-ios-sdk.git
  4. اختَر مكتبة Performance Monitoring.
  5. أضِف العلامة -ObjC إلى قسم علامات الرابط الأخرى (Other Linker Flags) في إعدادات الإصدار للهدف.
  6. بعد الانتهاء، سيبدأ Xcode تلقائيًا في حلّ التبعيات وتنزيلها في الخلفية.

بعد ذلك، اضبط وحدة Firebase:

  1. استورِد وحدة FirebaseCore في UIApplicationDelegate، بالإضافة إلى أي وحدات Firebase أخرى يستخدمها مفوّض تطبيقك. على سبيل المثال، لاستخدام Cloud Firestore وAuthentication:

    SwiftUI

    import SwiftUI
    import FirebaseCore
    import FirebaseFirestore
    import FirebaseAuth
    // ...
          

    Swift

    import FirebaseCore
    import FirebaseFirestore
    import FirebaseAuth
    // ...
          

    Objective-C

    @import FirebaseCore;
    @import FirebaseFirestore;
    @import FirebaseAuth;
    // ...
          
  2. اضبط مثيلاً مشتركًا في طريقة application(_:didFinishLaunchingWithOptions:) لمفوّض تطبيقك:FirebaseApp

    SwiftUI

    // Use Firebase library to configure APIs
    FirebaseApp.configure()

    Swift

    // Use Firebase library to configure APIs
    FirebaseApp.configure()

    Objective-C

    // Use Firebase library to configure APIs
    [FIRApp configure];
  3. إذا كنت تستخدم SwiftUI، عليك إنشاء مفوّض تطبيق وإرفاقه ببنية App من خلال UIApplicationDelegateAdaptor أو NSApplicationDelegateAdaptor. عليك أيضًا إيقاف عملية تبديل مفوّض التطبيق. لمزيد من المعلومات، اطّلِع على تعليمات SwiftUI.

    SwiftUI

    @main
    struct YourApp: App {
      // register app delegate for Firebase setup
      @UIApplicationDelegateAdaptor(AppDelegate.self) var delegate
    
      var body: some Scene {
        WindowGroup {
          NavigationView {
            ContentView()
          }
        }
      }
    }
          
  4. أعِد تجميع تطبيقك.

الخطوة 2: إنشاء أحداث الأداء لعرض البيانات الأولية

تبدأ Firebase بمعالجة الأحداث عند إضافة حزمة تطوير البرامج (SDK) إلى تطبيقك بنجاح. إذا كنت لا تزال تعمل على تطوير تطبيقك محليًا، تفاعَل معه لإنشاء أحداث لجمع البيانات الأولية ومعالجتها.

  1. واصِل تطوير تطبيقك باستخدام محاكي أو جهاز اختبار.

  2. أنشِئ الأحداث من خلال تبديل تطبيقك بين الخلفية والمقدّمة عدة مرات، والتفاعل مع تطبيقك من خلال التنقّل بين الشاشات و/أو تشغيل طلبات الشبكة.

  3. انتقِل إلى لوحة بيانات الأداء في وحدة التحكُّم Firebase. من المفترض أن تظهر لك البيانات الأولية في غضون بضع دقائق.

    إذا لم تظهر لك البيانات الأولية، راجِع نصائح تحديد المشاكل وحلّها.

الخطوة 3: (اختيارية) عرض رسائل السجلّ لأحداث الأداء

  1. فعِّل ميزة تسجيل معلومات تصحيح الأخطاء على النحو التالي:

    1. في Xcode (الإصدار 26.2 على الأقل)، انقر على المنتج (Product) > المخطّط (Scheme) > تعديل المخطّط (Edit scheme).
    2. انقر على تشغيل (Run) من القائمة على يمين الصفحة، ثم انقر على علامة التبويب المَعلمات (Arguments).
    3. في قسم المَعلمات التي تم ضبطها عند الإطلاق (Arguments Passed on Launch) ، أضِف -FIRDebugEnabled.
  2. راجِع رسائل السجلّ بحثًا عن أي رسائل خطأ.

  3. تضع ميزة Performance Monitoring علامة Firebase/Performance على رسائل السجلّ لتتمكّن من فلترتها.

  4. ابحث عن أنواع السجلّات التالية التي تشير إلى أنّ Performance Monitoring تسجّل أحداث الأداء:

    • Logging trace metric: TRACE_NAME, FIREBASE_PERFORMANCE_CONSOLE_URL
    • Logging network request trace: URL
  5. انقر على عنوان URL لعرض بياناتك في وحدة تحكُّم Firebase. قد يستغرق تحديث البيانات في لوحة البيانات بضع لحظات.

إذا كان تطبيقك لا يسجّل أحداث الأداء، راجِع نصائح تحديد المشاكل وحلّها.

الخطوة 4: (اختياري) إضافة رصد مخصّص لرمز معيّن

لمراقبة بيانات الأداء المرتبطة برمز معيّن في تطبيقك، يمكنك تتبُّع عمليات تتبُّع الرموز المخصّصة.

باستخدام عملية تتبُّع الرموز المخصّصة، يمكنك قياس المدة التي يستغرقها تطبيقك لإكمال مهمة معيّنة أو مجموعة من المهام، مثل تحميل مجموعة من الصور أو طلب بيانات من قاعدة البيانات. المقياس التلقائي لعملية تتبُّع الرموز المخصّصة هو مدتها، ولكن يمكنك أيضًا إضافة مقاييس مخصّصة، مثل عدد مرات الوصول إلى البيانات المخزّنة مؤقتًا وعدد التحذيرات بشأن الذاكرة.

في الرمز، يمكنك تحديد بداية ونهاية عملية تتبُّع الرموز المخصّصة (و إضافة أي مقاييس مخصّصة مطلوبة) باستخدام واجهة برمجة التطبيقات التي توفّرها حزمة تطوير البرامج (SDK) لـ Performance Monitoring.

انتقِل إلى مقالة إضافة مراقبة لرمز معيّن لمعرفة المزيد عن هذه الميزات وكيفية إضافتها إلى تطبيقك.

الخطوة 5: نشر تطبيقك ثم مراجعة النتائج

بعد التحقّق من Performance Monitoring باستخدام محاكي Xcode وجهاز اختبار واحد أو أكثر ، يمكنك نشر الإصدار المعدَّل من تطبيقك للمستخدمين.

يمكنك مراقبة بيانات الأداء في لوحة بيانات الأداء في وحدة تحكُّم Firebase.

المشكلات المعروفة

  • Performance Monitoring تواجه مشاكل توافق معروفة مع GTMSQLite. ننصحك بعدم استخدام Performance Monitoring مع التطبيقات التي تستخدم GTMSQLite.
  • قد يؤدي تغيير وظيفة الإجراء بعد استدعاء FirebaseApp.configure() إلى التداخل مع حزمة تطوير البرامج (SDK) لميزة Performance Monitoring.
  • تمنع المشاكل المعروفة في محاكي iOS 8.0-8.2 ميزة Performance Monitoring من تسجيل أحداث الأداء. تم إصلاح هذه المشاكل في محاكي iOS 8.3 والإصدارات الأحدث.
  • ستستغرق الاتصالات التي يتم إنشاؤها باستخدام backgroundSessionConfiguration في NSURLSession أوقات اتصال أطول من المتوقّع. يتم تنفيذ هذه الاتصالات خارج العملية، وتعكس الأوقات أحداث معاودة الاتصال داخل العملية.

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