إيقاف مراقبة أداء Firebase


أثناء تطوير التطبيق واختباره، قد يكون من المفيد إيقاف ميزة "مراقبة الأداء".

على سبيل المثال، من خلال إيقاف ميزة "مراقبة الأداء" أثناء عملية إنشاء تطبيقك، يمكنك إجراء ما يلي:

  • إيقاف وظائف معيّنة في Performance Monitoring في إصدارات التصحيح، ثم إعادة تفعيلها في الإصدار العلني

  • عليك إيقاف ميزة "مراقبة الأداء" عند إنشاء تطبيقك، ولكن السماح لتطبيقك بإعادة تفعيلها في وقت التشغيل.

  • أوقِف ميزة "مراقبة الأداء" عند إنشاء تطبيقك، ولا تسمح لتطبيقك بإعادة تفعيلها في وقت التشغيل.

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

إيقاف خدمة "مراقبة الأداء" أثناء عملية إنشاء تطبيقك

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

لإجراء ذلك، راجِع مستندات iOS+ وAndroid الخاصة بالنظام الأساسي.

إيقاف تطبيقك في وقت التشغيل باستخدام ميزة "الإعداد عن بُعد"

تتيح لك خدمة الإعداد عن بُعد في Firebase إجراء تغييرات على طريقة عمل تطبيقك ومظهره، ما يوفّر طريقة مثالية لإيقاف ميزة "مراقبة الأداء" في النُسخ المنشورة من تطبيقك.

على سبيل المثال، لنفترض أنّك تريد استخدام مَعلمة باسم perf_disable للتحكّم عن بُعد في "مراقبة الأداء". أضِف ما يلي إلى رمز بدء التشغيل لتفعيل خدمة "مراقبة الأداء" أو إيقافها:

// Activate previously-fetched values, falling back on the defaults if
// nothing is available yet.
await FirebaseRemoteConfig.instance
    .setDefaults(YOUR_REMOTE_CONFIG_DEFAULTS);
await FirebaseRemoteConfig.instance.activate();

// Enable or disable Performance Monitoring based on the value of
// "perf_disable".
final perfMonDisabled =
    FirebaseRemoteConfig.instance.getBool("perf_disable");
FirebasePerformance.instance
    .setPerformanceCollectionEnabled(!perfMonDisabled);

// Fetch values for next time. (Don't await the result!)
FirebaseRemoteConfig.instance.fetch();