بدء استخدام ميزة "مراقبة الأداء" على Android

قبل البدء

إذا لم تكن قد فعلت ذلك بالفعل، إضافة Firebase إلى مشروع Android

الخطوة 1: إضافة حزمة SDK لمراقبة الأداء إلى تطبيقك

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

  1. في ملف Gradle للوحدة (على مستوى التطبيق) (عادةً <project>/<app-module>/build.gradle.kts أو <project>/<app-module>/build.gradle)، إضافة التبعية لمكتبة مراقبة الأداء لنظام Android. ننصح باستخدام قائمة مواد العرض لنظام Android في Firebase للتحكم في إصدارات المكتبة.

    dependencies {
        // Import the BoM for the Firebase platform
        implementation(platform("com.google.firebase:firebase-bom:33.1.2"))
    
        // Add the dependency for the Performance Monitoring library
        // When using the BoM, you don't specify versions in Firebase library dependencies
        implementation("com.google.firebase:firebase-perf")
    }
    

    باستخدام قائمة قائمتها التشغيلية (Android BoM) من Firebase سيستخدم تطبيقك دائمًا إصدارات متوافقة من مكتبات Android في Firebase.

    (بديل) إضافة تبعيات مكتبة Firebase بدون استخدام BoM

    إذا اخترت عدم استخدام قائمة عناصر Firebase، يجب تحديد كل إصدار من إصدارات مكتبة Firebase. في سطر التبعية.

    يُرجى ملاحظة أنّه إذا كنت تستخدم مكتبات Firebase متعددة في تطبيقك، سنعتمد بشدة التوصية باستخدام BoM لإدارة نسخ المكتبة، مما يضمن نشر جميع النسخ متوافقة مع الأجهزة الجوّالة

    dependencies {
        // Add the dependency for the Performance Monitoring library
        // When NOT using the BoM, you must specify versions in Firebase library dependencies
        implementation("com.google.firebase:firebase-perf:21.0.1")
    }
    
    هل تبحث عن وحدة مكتبة خاصة بلغة Kotlin؟ ستبدأ بعد تشرين الأول (أكتوبر) 2023 (الإصدار 32.5.0 من Firebase BoM)، بإمكان مطوّري برامج Kotlin وJava تعتمد على وحدة المكتبة الرئيسية (لمزيد من التفاصيل، راجع الأسئلة الشائعة حول هذه المبادرة).

  2. أعِد تجميع تطبيقك.

الخطوة 2: إضافة المكوّن الإضافي لنظام Gradle لتتبُّع الأداء إلى تطبيقك

بعد إضافة المكوّن الإضافي للأداء Gradle، يبدأ Firebase تلقائيًا جمع البيانات طلبات الشبكة عبر HTTP/S: تشير رسالة الأشكال البيانية إمكانية قياس عمليات تتبع الرموز المخصصة باستخدام التعليق التوضيحي@AddTrace:

  1. في ملف Gradle على مستوى الجذر (على مستوى المشروع) (<project>/build.gradle.kts أو <project>/build.gradle)، أضِف السمة المكوّن الإضافي لنظام Gradle لمراقبة الأداء:

    Kotlin

    plugins {
        // To benefit from the latest Performance Monitoring plugin features,
        // update your Android Gradle plugin dependency to at least v3.4.0
        id("com.android.application") version "7.3.0" apply false
    
        // Make sure that you have the Google services Gradle plugin dependency
        id("com.google.gms.google-services") version "4.4.2" apply false
    
        // Add the dependency for the Performance Monitoring Gradle plugin
        id("com.google.firebase.firebase-perf") version "1.4.2" apply false
    }
    

    Groovy

    plugins {
        // To benefit from the latest Performance Monitoring plugin features,
        // update your Android Gradle plugin dependency to at least v3.4.0
        id 'com.android.application' version '7.3.0' apply false
    
        // Make sure that you have the Google services Gradle plugin dependency
        id 'com.google.gms.google-services' version '4.4.2' apply false
    
        // Add the dependency for the Performance Monitoring Gradle plugin
        id 'com.google.firebase.firebase-perf' version '1.4.2' apply false
    }
    
  2. في ملف Gradle للوحدة (على مستوى التطبيق) (عادةً <project>/<app-module>/build.gradle.kts أو <project>/<app-module>/build.gradle)، أضِف "مراقبة الأداء" المكوّن الإضافي Gradle:

    Kotlin

    plugins {
        id("com.android.application")
    
        // Make sure that you have the Google services Gradle plugin
        id("com.google.gms.google-services")
    
        // Add the Performance Monitoring Gradle plugin
        id("com.google.firebase.firebase-perf")
        ...
    }
    

    Groovy

    plugins {
        id 'com.android.application'
    
        // Make sure that you have the Google services Gradle plugin
        id 'com.google.gms.google-services'
    
        // Add the Performance Monitoring Gradle plugin
        id 'com.google.firebase.firebase-perf'
        ...
    }
    
  3. أعِد تجميع تطبيقك.

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

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

  1. يمكنك إنشاء أحداث من خلال تبديل تطبيقك بين الخلفية والمقدمة. عدة مرات، والتفاعل مع التطبيق عن طريق التنقل عبر الشاشات، و/أو تشغيل طلبات الشبكة.

  2. انتقِل إلى لوحة بيانات الأداء بوحدة تحكم Firebase. يجب أن تظهر بياناتك الأولية داخل بضع دقائق.

    إذا لم يتم عرض بياناتك الأولية، راجع أداة تحري الخلل وإصلاحه النصائح.

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

  1. يمكنك تفعيل تسجيل تصحيح الأخطاء لميزة "مراقبة الأداء" في وقت الإصدار من خلال إضافة <meta-data>. إلى ملف AndroidManifest.xml في تطبيقك، على النحو التالي:

    <application>
        <meta-data
          android:name="firebase_performance_logcat_enabled"
          android:value="true" />
    </application>
    
  2. تحقَّق من رسائل السجلّ بحثًا عن أي رسائل خطأ.

  3. تضيف "مراقبة الأداء" علامة FirebasePerformance على رسائل السجلّ الخاصة بها. استخدام Logcat يمكنك، على وجه التحديد، عرض تتبع المدة وشبكة HTTP/S طلب التسجيل من خلال تشغيل الأمر التالي:

    adb logcat -s FirebasePerformance
  4. ابحث عن الأنواع التالية من السجلّات التي تشير إلى أنّ ميزة "مراقبة الأداء" تسجيل أحداث الأداء:

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

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

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

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

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

في التعليمة البرمجية، يمكنك تحديد بداية ونهاية عملية تتبُّع الرمز المخصّص ( إضافة أي مقاييس مخصّصة مطلوبة) باستخدام واجهة برمجة التطبيقات التي توفرها حزمة تطوير البرامج (SDK) لمراقبة الأداء. بالنسبة إلى تطبيقات Android، يمكنك أيضًا مراقبة مدة طرق محددة باستخدام التعليق التوضيحي@AddTrace:

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

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

بعد التحقّق من صحة "مراقبة الأداء" باستخدام جهاز اختبار واحد أو أكثر، يمكنك إجراء ما يلي: نشْر الإصدار المُحدَّث من التطبيق بين المستخدمين.

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

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

  • الإصدار 1.1.0 من المكوّن الإضافي "مراقبة الأداء" لنظام Gradle المتوافق مع الترميز التبعية، التي ينتج عنها الخطأ التالي:

    Error:Execution failed for task ':app:packageInstantRunResourcesDebug'.
    > com.google.common.util.concurrent.MoreExecutors.directExecutor()Ljava/util/concurrent/Executor;

    إذا ظهر لك هذا الخطأ، يمكنك إجراء أي مما يلي:

    • ترقية المكوّن الإضافي "مراقبة الأداء" إلى الإصدار 1.1.1 أو إصدار أحدث (الإصدار الأحدث هو الإصدار 1.4.2).

    • استبدل سطر تبعية المكون الإضافي "مراقبة الأداء" في مستوى الجذر (على مستوى المشروع) ملف Gradle (<project>/build.gradle.kts أو <project>/build.gradle)، على النحو التالي:

      Kotlin

      buildscript {
        // ...
      
        dependencies {
          // ...
      
          // Replace the standard Performance Monitoring plugin dependency line, as follows:
          classpath("com.google.firebase:perf-plugin:1.1.0") {
              exclude(group = "com.google.guava", module = "guava-jdk5")
          }
        }
      }
      

      Groovy

      buildscript {
        // ...
      
        dependencies {
          // ...
      
          // Replace the standard Performance Monitoring plugin dependency line, as follows:
          classpath('com.google.firebase:perf-plugin:1.1.0') {
              exclude group: 'com.google.guava', module: 'guava-jdk5'
          }
        }
      }
      
  • تعرض "مراقبة الأداء" إجمالي حجم حمولة طلبات شبكة HTTP استنادًا إلى على القيمة المحددة في عنوان HTTP content-length. قد لا تكون هذه القيمة كن دقيقًا دائمًا.

  • لا تتيح ميزة "مراقبة الأداء" تنفيذ العملية الرئيسية إلا في تطبيقات Android المتعدّدة العمليات.

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