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

قبل البدء

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

الخطوة 1: إضافة حزمة تطوير البرامج (SDK) Performance Monitoring إلى تطبيقك

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

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

    dependencies {
        // Import the BoM for the Firebase platform
        implementation(platform("com.google.firebase:firebase-bom:33.2.0"))
    
        // 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")
    }

    باستخدام Firebase Android BoM، سيستخدم تطبيقك دائمًا إصدارات متوافقة من مكتبات Android في Firebase.

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

    إذا اخترت عدم استخدام Firebase BoM، يجب تحديد كل إصدار من إصدارات مكتبة 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 (Firebase BoM 32.5.0)، بإمكان مطوّري البرامج بلغة Kotlin وJava. تعتمد على وحدة المكتبة الرئيسية (لمزيد من التفاصيل، راجع الأسئلة الشائعة حول هذه المبادرة).

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

الخطوة 2: إضافة Performance Monitoring مكوّن Gradle الإضافي إلى تطبيقك

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

  1. في ملف Gradle على مستوى الجذر (على مستوى المشروع) (<project>/build.gradle.kts أو <project>/build.gradle)، أضِف المكوّن الإضافي Performance Monitoring 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)، أضِف المكوّن الإضافي Performance Monitoring 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. يمكنك تفعيل تسجيل تصحيح الأخطاء لـ Performance Monitoring في وقت الإصدار من خلال إضافة <meta-data>. إلى ملف AndroidManifest.xml في تطبيقك، على النحو التالي:

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

    • استبدل سطر تبعية المكون الإضافي Performance Monitoring في مستوى الجذر (على مستوى المشروع) ملف 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'
          }
        }
      }
  • تعرض خدمة Performance Monitoring إجمالي حجم حمولة طلبات شبكة HTTP استنادًا إلى ذلك. على القيمة المحددة في عنوان HTTP content-length. قد لا تكون هذه القيمة كن دقيقًا دائمًا.

  • لا يتيح Performance Monitoring سوى العملية الرئيسية في تطبيقات Android التي تستخدم عمليات متعددة.

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