قبل ان تبدأ
أضف Firebase إلى مشروع Android ، إذا لم تكن قد قمت بذلك بالفعل.
الخطوة 1 : أضف SDK لمراقبة الأداء إلى تطبيقك
بعد إضافة SDK لمراقبة الأداء ، يبدأ Firebase تلقائيًا في جمع البيانات لعرض شاشة تطبيقك والبيانات المتعلقة بدورة حياة تطبيقك (مثل وقت بدء التطبيق ). لتمكين Firebase من مراقبة طلبات الشبكة ، يجب عليك أيضًا إضافة المكوّن الإضافي لمراقبة الأداء Gradle (الخطوة التالية).
في ملف Gradle (على مستوى التطبيق) الوحدة النمطية الخاصة بك (عادةً
<project>/<app-module>/build.gradle.kts
أو<project>/<app-module>/build.gradle
) ، أضف التبعية لمراقبة الأداء مكتبة Android. نوصي باستخدام Firebase Android BoM للتحكم في إصدارات المكتبة.Kotlin+KTX
dependencies { // Import the BoM for the Firebase platform implementation(platform("com.google.firebase:firebase-bom:32.3.1")) // 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-ktx") }
باستخدام Firebase Android BoM ، سيستخدم تطبيقك دائمًا إصدارات متوافقة من مكتبات Firebase Android.
(بديل) أضف تبعيات مكتبة 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-ktx:20.4.1") }
Java
dependencies { // Import the BoM for the Firebase platform implementation(platform("com.google.firebase:firebase-bom:32.3.1")) // 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 ، سيستخدم تطبيقك دائمًا إصدارات متوافقة من مكتبات Firebase Android.
(بديل) أضف تبعيات مكتبة 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:20.4.1") }
أعد تجميع تطبيقك.
الخطوة 2 : أضف المكون الإضافي لمراقبة الأداء Gradle إلى تطبيقك
بعد إضافة المكوّن الإضافي لمراقبة الأداء Gradle ، يبدأ Firebase تلقائيًا في جمع البيانات لطلبات شبكة HTTP / S. يمكّنك المكون الإضافي أيضًا من أداة تتبع التعليمات البرمجية المخصصة باستخدام التعليق التوضيحيAddTrace .
في ملف 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.2.0" apply false // Make sure that you have the Google services Gradle plugin dependency id("com.google.gms.google-services") version "4.3.15" 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.2.0' apply false // Make sure that you have the Google services Gradle plugin dependency id 'com.google.gms.google-services' version '4.3.15' apply false // Add the dependency for the Performance Monitoring Gradle plugin id 'com.google.firebase.firebase-perf' version '1.4.2' apply false }
في ملف 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 : إنشاء أحداث الأداء لعرض البيانات الأولية
يبدأ Firebase في معالجة الأحداث عند إضافة SDK إلى تطبيقك بنجاح. إذا كنت لا تزال تطورًا محليًا ، فتفاعل مع تطبيقك لإنشاء أحداث لجمع البيانات الأولية ومعالجتها.
أنشئ الأحداث من خلال تبديل التطبيق الخاص بك بين الخلفية والمقدمة عدة مرات ، والتفاعل مع تطبيقك من خلال التنقل عبر الشاشات ، و / أو تشغيل طلبات الشبكة.
انتقل إلى لوحة معلومات الأداء لوحدة تحكم Firebase. يجب أن تشاهد عرض بياناتك الأولية في غضون بضع دقائق.
إذا كنت لا ترى عرضًا لبياناتك الأولية ، فراجع نصائح استكشاف الأخطاء وإصلاحها .
الخطوة 4 : (اختياري) اعرض رسائل السجل لأحداث الأداء
قم بتمكين تسجيل تصحيح الأخطاء لمراقبة الأداء في وقت الإنشاء عن طريق إضافة عنصر
<meta-data>
إلى ملفAndroidManifest.xml
الخاص بتطبيقك ، مثل:<application> <meta-data android:name="firebase_performance_logcat_enabled" android:value="true" /> </application>
تحقق من رسائل السجل الخاصة بك بحثًا عن أي رسائل خطأ.
تعمل مراقبة الأداء على وضع علامة
FirebasePerformance
على رسائل السجل الخاصة بها. باستخدام تصفية logcat ، يمكنك على وجه التحديد عرض تتبع المدة وتسجيل طلب شبكة HTTP / S عن طريق تشغيل الأمر التالي:adb logcat -s FirebasePerformance
تحقق من الأنواع التالية من السجلات التي تشير إلى أن مراقبة الأداء تسجل أحداث الأداء:
-
Logging trace metric: TRACE_NAME , FIREBASE_PERFORMANCE_CONSOLE_URL
-
Logging network request trace: URL
-
انقر فوق عنوان URL لعرض بياناتك في وحدة تحكم Firebase. قد يستغرق تحديث البيانات في لوحة المعلومات بضع لحظات.
إذا كان تطبيقك لا يسجل أحداث الأداء ، فراجع نصائح استكشاف الأخطاء وإصلاحها .
الخطوة 5 : (اختياري) أضف مراقبة مخصصة لرمز معين
لمراقبة بيانات الأداء المرتبطة برمز معين في تطبيقك ، يمكنك استخدام أدوات تتبع التعليمات البرمجية المخصصة .
باستخدام تتبع رمز مخصص ، يمكنك قياس الوقت الذي يستغرقه تطبيقك لإكمال مهمة معينة أو مجموعة من المهام ، مثل تحميل مجموعة من الصور أو الاستعلام عن قاعدة البيانات الخاصة بك. المقياس الافتراضي لتتبع التعليمات البرمجية المخصصة هو مدته ، ولكن يمكنك أيضًا إضافة مقاييس مخصصة ، مثل نتائج ذاكرة التخزين المؤقت وتحذيرات الذاكرة.
في التعليمات البرمجية الخاصة بك ، تقوم بتحديد بداية ونهاية تتبع رمز مخصص (وإضافة أي مقاييس مخصصة مطلوبة) باستخدام واجهة برمجة التطبيقات التي توفرها SDK لمراقبة الأداء. بالنسبة لتطبيقات Android ، يمكنك أيضًا مراقبة مدة الأساليب المحددة باستخدام التعليق التوضيحيAddTrace .
قم بزيارة إضافة مراقبة لرمز معين لمعرفة المزيد حول هذه الميزات وكيفية إضافتها إلى تطبيقك.
الخطوة 6 : انشر تطبيقك ثم راجع النتائج
بعد التحقق من صحة مراقبة الأداء باستخدام جهاز اختبار واحد أو أكثر ، يمكنك نشر الإصدار المحدث من تطبيقك للمستخدمين.
يمكنك مراقبة بيانات الأداء في لوحة معلومات الأداء لوحدة تحكم Firebase.
مشاكل معروفة
يمكن أن يتسبب ملحق Gradle الإضافي لمراقبة الأداء v1.1.0 في عدم تطابق تبعيات الجوافة ، مما يؤدي إلى الخطأ التالي:
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. قد لا تكون هذه القيمة دقيقة دائمًا.
تدعم مراقبة الأداء العملية الرئيسية فقط في تطبيقات Android متعددة العمليات.
الخطوات التالية
قم بمراجعة وتشغيل نموذج رمز مراقبة الأداء لنظام Android على GitHub .
تعرف على المزيد حول البيانات التي تم جمعها تلقائيًا بواسطة مراقبة الأداء:
- البيانات المتعلقة بدورة حياة التطبيق ، مثل وقت بدء التطبيق
- بيانات عرض الشاشة في تطبيقك
- بيانات طلبات شبكة HTTP / S الصادرة عن تطبيقك
اعرض بيانات الأداء وتتبعها وفلترتها في وحدة تحكم Firebase.
أضف مراقبة لمهام محددة أو سير عمل في تطبيقك من خلال أدوات تتبع التعليمات البرمجية المخصصة .