مَعلمات وشروط "الإعداد عن بُعد" في نماذج العملاء

اختيار نوع النموذج: نماذج برامج العميل نماذج الخادم


يمكنك عرض مَعلمات وقيم Remote Config من نماذج العملاء لأي مثيلات تطبيقات تستخدم حِزم تطوير البرامج (SDK) لعملاء Firebase في Remote Config، بما في ذلك تطبيقات Apple وAndroid والويب وFlutter وUnity وC++‎.

عند استخدام وحدة تحكّم Firebase أو واجهات برمجة التطبيقات الخلفية لميزة "Remote Config"، يمكنك تحديد مَعلمة واحدة أو أكثر (أزواج المفتاح-القيمة) وتقديم قيم تلقائية داخل التطبيق لهذه المَعلمات. يمكنك إلغاء القيم التلقائية داخل التطبيق من خلال تحديد قيم المَعلمات. مفاتيح المَعلمات وقيم المَعلمات هي سلاسل، ولكن يمكن تحويل قيم المَعلمات إلى أنواع بيانات أخرى عند استخدام هذه القيم في تطبيقك.

باستخدام وحدة تحكّم Firebase، Admin SDK أو واجهة برمجة تطبيقات REST لخدمة Remote Config، يمكنك إنشاء قيم تلقائية جديدة للمَعلمات، بالإضافة إلى قيم شرطية تُستخدَم لاستهداف مجموعات من نُسخ التطبيق. في كل مرة تعدّل فيها إعداداتك في وحدة تحكّم "Firebase"، تنشئ Firebase إصدارًا جديدًا من نموذج "Remote Config" وتنشره. يتم تخزين النسخة السابقة، مما يتيح لك استردادها أو التراجع عنها حسب الحاجة. تتوفّر لك هذه العمليات في وحدة تحكّم Firebase وFirebase Admin SDK وREST API، ويتم شرحها بمزيد من التفصيل في مقالة إدارة إصدارات نماذج Remote Config.

يشرح هذا الدليل المَعلمات والشروط والقواعد والقيم الشرطية وكيفية تحديد أولوية قيم المَعلمات المختلفة في الخلفية في Remote Config وفي تطبيقك. ويقدّم أيضًا تفاصيل عن أنواع القواعد المستخدَمة لإنشاء الشروط.

الشروط والقواعد والقيم الشرطية

يُستخدَم الشرط لاستهداف مجموعة من نُسخ التطبيق. تتألف الشروط من قاعدة واحدة أو أكثر يجب أن يتم تقييمها جميعًا على أنّها true لكي يتم تقييم الشرط على أنّه true لمثيل تطبيق معيّن. إذا كانت قيمة القاعدة غير محدّدة (على سبيل المثال، في حال عدم توفّر قيمة)، يتم تقييم هذه القاعدة على أنّها false.

على سبيل المثال، يمكن أن تعرض مَعلمة تحدّد صفحة البداية في التطبيق صورًا مختلفة استنادًا إلى نوع نظام التشغيل باستخدام القاعدة if device_os = Android:

لقطة شاشة لمَعلمة splash_page في وحدة تحكُّم Firebase تعرض قيمتها التلقائية لنظام التشغيل iOS وقيمتها الشرطية لنظام التشغيل Android

أو يمكن استخدام شرط زمني للتحكّم في وقت عرض تطبيقك لعناصر ترويجية خاصة.

يمكن أن تحتوي المَعلمة على قيم شرطية متعددة تستخدم شروطًا مختلفة، ويمكن أن تشارك المَعلمات الشروط ضمن مشروع معيّن. في وحدة تحكّم Firebase، انتقِل إلى صفحة DevOps & Engagement > الإعداد عن بُعد > المَعلمات للاطّلاع على نسبة الجلب للقيم الشرطية لكل مَعلمة. يشير هذا المقياس إلى النسبة المئوية للطلبات التي تلقّت كل قيمة في آخر 24 ساعة.

إضافة الشروط أو تعديلها أو إعادة ترتيبها أو حذفها باستخدام وحدة تحكّم Firebase

يمكنك إنشاء شروط الاستهداف وتعديلها وإعادة ترتيبها وحذفها في وحدة تحكّم Firebase. تتم مشاركة الشروط في جميع المَعلمات ضمن المشروع. إليك كيفية إدارة الشروط:

  1. في وحدة تحكّم Firebase، انتقِل إلى DevOps & Engagement > الإعداد عن بُعد > صفحة الشروط (أو اختَر إدارة الشروط من صفحة المَعلمات).
  2. إضافة شرط: انقر على إضافة شرط (أو إنشاء الشرط الأول)، وأدخِل اسمًا يحدّد هدف الاستهداف، واختَر قاعدة استهداف واحدة أو أكثر.
  3. تعديل شرط: انقر على اسم الشرط أو رمز التعديل، وعدِّل القواعد حسب الحاجة، ثم انقر على حفظ.
  4. تغيير أولوية الشرط: في صفحة الشروط، اسحب الشروط باستخدام مقبض الإمساك لإعادة ترتيبها. وتحظى الشروط الأعلى في القائمة بالأولوية على الشروط الأدنى في القائمة.
  5. حذف شرط: انقر على رمز الحذف بجانب الشرط الذي تريد إزالته. إذا تمت الإشارة إلى الشرط من خلال أي مَعلمة، ستؤدي إزالته أيضًا إلى إزالة القيم الشرطية المرتبطة به.

بعد حفظ التغييرات في الشرط، انشر النموذج باستخدام نشر التغييرات.

قيود الإصدار السادس من بروتوكول الإنترنت (IPv6) مع التحكّم في الوصول المستند إلى عنوان IP

يوفّر "Remote Config" دعمًا محدودًا لبروتوكول IPv6 عند استخدامه مع سياسات الوصول المستندة إلى عنوان IP. إذا كانت مؤسستك تفرض قيودًا على الوصول إلى نطاقات عناوين IP عامة معيّنة، يمكن أن يؤدي الاتصال من خلال شبكة IPv6 إلى حدوث المشاكل التالية:

  • الوصول إلى وحدة التحكّم: قد لا تتمكّن من استخدام ميزات معيّنة في "Remote Config" في وحدة تحكّم "Firebase"، مثل تحميل البيانات أو إعداد الاستهداف.
  • وصول العميل: قد تظهر أخطاء PERMISSION_DENIED في تطبيقات العملاء.

لتجنُّب هذه المشاكل، يمكنك ضبط شبكتك لاستخدام IPv4 أو إضافة نطاقات عناوين IP المطلوبة في Firebase إلى القائمة المسموح بها في مؤسستك.

أولوية قيمة المَعلمة

قد تحتوي المَعلمة على عدة قيم شرطية مرتبطة بها. تحدّد القواعد التالية القيمة التي يتم جلبها من نموذج Remote Config والقيمة التي يتم استخدامها في مثيل تطبيق معيّن في وقت محدّد:

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

  2. إذا لم تكن هناك قيم شرطية تتضمّن شروطًا يتم تقييمها على أنّها true، يتم تقديم القيمة التلقائية لـ Remote Config عندما يجلب التطبيق القيم من الخلفية. إذا لم تكن المَعلمة متوفّرة في الخلفية، أو إذا تم ضبط القيمة التلقائية على استخدام القيمة التلقائية داخل التطبيق، لن يتم تقديم أي قيمة لهذه المَعلمة عندما يجلب التطبيق القيم.

في تطبيقك، يتم عرض قيم المَعلمات من خلال طرق get وفقًا لقائمة الأولويات التالية

  1. إذا تم جلب قيمة من الخلفية ثم تفعيلها، يستخدم التطبيق القيمة التي تم جلبها. تكون قيم المَعلمات المفعَّلة ثابتة.
  2. إذا لم يتم جلب أي قيمة من الخلفية، أو إذا لم يتم تفعيل القيم التي تم جلبها من الخلفية في Remote Config، سيستخدم التطبيق القيمة التلقائية داخل التطبيق.

    لمزيد من المعلومات حول الحصول على القيم التلقائية وضبطها، يُرجى الاطّلاع على مقالة تنزيل القيم التلقائية لنموذج Remote Config.

  3. في حال عدم ضبط قيمة تلقائية داخل التطبيق، يستخدم التطبيق قيمة نوع ثابت (مثل 0 لـ int وfalse لـ boolean).

يلخّص هذا الرسم البياني كيفية تحديد أولوية قيم المَعلمات في الواجهة الخلفية لخدمة Remote Config وفي تطبيقك:

مخطّط بياني يعرض المسار الموضّح في القوائم مع ترتيب أعلاه

أنواع بيانات قيم المَعلمات

تتيح لك ميزة "Remote Config" اختيار نوع بيانات لكل مَعلمة، والتحقّق من صحة جميع قيم "Remote Config" وفقًا لهذا النوع قبل تعديل النموذج. يتم تخزين نوع البيانات وعرضه في طلب getRemoteConfig.

أنواع البيانات المتوافقة هي:

  • String
  • Boolean
  • Number
  • JSON

في واجهة مستخدم وحدة تحكّم Firebase، يمكن اختيار نوع البيانات من قائمة منسدلة بجانب مفتاح المَعلمة. في REST API، يمكن ضبط الأنواع باستخدام الحقل value_type ضمن عنصر المَعلمة.

مجموعات المَعلمات

تتيح لك ميزة "Remote Config" تجميع المَعلمات معًا للحصول على واجهة مستخدم أكثر تنظيمًا وتحسين سهولة الاستخدام.

على سبيل المثال، لنفترض أنّك بحاجة إلى تفعيل أو إيقاف ثلاثة أنواع مختلفة من المصادقة أثناء طرح ميزة تسجيل دخول جديدة. باستخدام Remote Config، يمكنك إنشاء المَعلمات الثلاث لتفعيل الأنواع التي تريدها، ثم تنظيمها في مجموعة باسم "تسجيل دخول جديد"، بدون الحاجة إلى إضافة بادئات أو ترتيب خاص.

يمكنك إنشاء مجموعات مَعلمات باستخدام وحدة تحكّم Firebase أو REST API في Remote Config. تحمل كل مجموعة مَعلمات تنشئها اسمًا فريدًا في نموذج Remote Config. عند إنشاء مجموعات المَعلمات، يُرجى مراعاة ما يلي:

  • يمكن تضمين المَعلمات في مجموعة واحدة فقط في أي وقت، ويجب أن يكون مفتاح المَعلمة فريدًا في جميع المَعلمات.
  • يجب ألا يتجاوز طول أسماء مجموعات المَعلمات 256 حرفًا.
  • إذا كنت تستخدم كلاً من REST API ووحدة تحكّم Firebase، تأكَّد من تعديل أي منطق في REST API للتعامل مع مجموعات المَعلمات عند النشر.

إنشاء مجموعات المَعلمات أو تعديلها باستخدام وحدة تحكّم Firebase

يمكنك تجميع المَعلمات في وحدة تحكّم Firebase. إليك كيفية إنشاء مجموعة أو تعديلها:

  1. في وحدة تحكّم Firebase، انتقِل إلى صفحة DevOps & Engagement > الإعداد عن بُعد > المَعلمات.
  2. انقر على إدارة المجموعات.
  3. ضَع علامة في مربّعات الاختيار بجانب المَعلمات التي تريد إضافتها، ثم انقر على نقل إلى المجموعة.
  4. اختَر مجموعة حالية أو أنشِئ مجموعة جديدة من خلال إدخال اسم ووصف، ثم انقر على إنشاء مجموعة جديدة. بعد حفظ مجموعة، تصبح متاحة للنشر باستخدام الزر نشر التغييرات.

إنشاء المجموعات آليًا

توفّر واجهة برمجة التطبيقات REST API في Remote Config طريقة مبرمَجة لإنشاء مجموعات المَعلمات ونشرها. بافتراض أنّك على دراية بـ REST وتم إعدادك لتفويض الطلبات إلى واجهة برمجة التطبيقات، يمكنك تنفيذ هذه الخطوات لإدارة المجموعات آليًا:

  1. استرجع النموذج الحالي.
  2. أضِف عناصر JSON لتمثيل مجموعات المَعلمات.
  3. انشر مجموعات المَعلمات باستخدام طلب HTTP PUT.

يحتوي العنصر parameterGroups على مفاتيح المجموعات، مع وصف مدمج وقائمة بالمعلَمات المجمّعة. يُرجى العِلم أنّ كل مفتاح مجموعة يجب أن يكون فريدًا على مستوى العالم.

على سبيل المثال، إليك مقتطف من نسخة معدَّلة من نموذج يضيف مجموعة المَعلمات "قائمة جديدة" مع مَعلمة واحدة، وهي pumpkin_spice_season:

{
  "parameters": {},
  "version": {
    "versionNumber": "1",

    …

  },
  "parameterGroups": {
    "new menu": {
      "description": "New Menu",
      "parameters": {
        "pumpkin_spice_season": {
          "defaultValue": {
            "value": "true"
          },
          "description": "Whether it's pumpkin spice season."
        }
      }
    }
  }
}

شروط الإشارات المخصّصة

يمكن استخدام القيم الشرطية للإشارات المخصّصة لمطابقة الإشارات العشوائية التي تحدّدها وترسلها في تطبيقك مع الشروط التي تنشئها استنادًا إلى الإشارات في Remote Config. يتيح لك ذلك تخصيص تجارب التطبيق أو من جهة العميل.

تتوفّر شروط الإشارات المخصّصة لبيئات العملاء التالية:

  • ‫iOS: الإصدار 11.8.0 أو إصدار أحدث
  • ‫Android: الإصدار 22.1.0 أو إصدار أحدث (Firebase BoM الإصدار 33.8.0 أو إصدار أحدث)
  • الويب: الإصدار 11.2.0 أو إصدار أحدث
  • ‫Flutter: الإصدار 3.6.0 من Flutter BoM أو إصدار أحدث

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

  1. أضِف banner_image_url وbanner_link إلى نموذج عميل Remote Config. تمثّل هذه العناصر صورة البانر وصفحة الحدث المرتبطة بهذه الصورة.
  2. اضبط إشارات مخصّصة من تطبيقك باستخدام القيمتَين city وpreferred_event_category.
  3. أضِف قيمًا تلقائية إلى نموذج Remote Config الخاص بالعميل وأنشئ قيمًا شرطية استنادًا إلى الإشارات المخصّصة التي حدّدتها في الخطوة السابقة.
  4. أضِف قيمًا تلقائية إلى نموذج Remote Config الخاص بالعميل و قيمًا شرطية لكل شرط حدّدته.
  5. عدِّل الرمز البرمجي للتطبيق لضبط شروط الإشارات المخصّصة واستخدامها.

يمكن لتطبيقك الآن تنزيل banner_image_url وbanner_link المناسبَين عند جلب هذه المَعلمات من خادم Remote Config.

الحدود

عند إنشاء شروط إشارة مخصّصة، يجب الالتزام بالحدود التالية:

  • عدد الإشارات المخصّصة: يمكنك إنشاء ما يصل إلى 100 إشارة مخصّصة لكلّ مثيل تطبيق. يمكنك إلغاء ضبط إشارة مخصّصة من خلال ضبط قيمتها على "فارغة".
  • اسم الإشارة المخصّصة: يمكن أن يتألف كل اسم إشارة مخصّصة من 250 حرفًا كحدّ أقصى.
  • قيمة الإشارة المخصّصة: يمكن أن تتضمّن كل قيمة إشارة مخصّصة ما يصل إلى 500 حرف. عند استخدام التعبيرات العادية، يكون الحدّ الأقصى هو 250 حرفًا.

أنواع قواعد الشروط

تتوفّر أنواع القواعد التالية في وحدة تحكّم "Firebase". تتوفّر ميزات مكافئة في واجهة برمجة التطبيقات Remote Config REST، كما هو موضّح في مرجع التعبير الشرطي.

نوع القاعدة المشغِّلون القيم ملاحظة
التطبيق == اختَر من قائمة معرّفات التطبيقات المرتبطة بمشروعك على Firebase. عند إضافة تطبيق إلى Firebase، عليك إدخال معرّف حزمة أو اسم حزمة Android يحدّد سمة يتم عرضها على أنّها رقم تعريف التطبيق في قواعد Remote Config.

استخدِم هذه السمة على النحو التالي:
  • بالنسبة إلى أنظمة Apple الأساسية: استخدِم CFBundleIdentifier الخاص بالتطبيق. يمكنك العثور على معرّف الحزمة في علامة التبويب عام للهدف الأساسي لتطبيقك في Xcode.
  • بالنسبة إلى Android: استخدِم applicationId الخاص بالتطبيق. يمكنك العثور على applicationId في ملف build.gradle(.kts) على مستوى التطبيق.
إصدار التطبيق بالنسبة إلى القيم النصية:
تطابق تام،
تحتوي على،
لا تحتوي على،
تحتوي على تعبير عادي

بالنسبة إلى القيم الرقمية:
<، <=، =، !=، >، >=

حدِّد إصدارات تطبيقك التي تريد استهدافها.

قبل استخدام هذه القاعدة، يجب استخدام قاعدة معرّف التطبيق لاختيار تطبيق Android أو Apple مرتبط بمشروع Firebase.

بالنسبة إلى أنظمة Apple الأساسية: استخدِم CFBundleShortVersionString الخاص بالتطبيق.

ملاحظة: تأكَّد من أنّ تطبيق Apple يستخدم الإصدار 6.24.0 أو إصدارًا أحدث من حزمة تطوير البرامج (SDK) لمنصات Apple في Firebase، لأنّ CFBundleShortVersionString لا يتم إرساله في الإصدارات السابقة (يُرجى الاطّلاع على ملاحظات الإصدار).

على أجهزة Android: استخدِم versionName للتطبيق.

ملاحظة: تتيح عوامل المقارنة الرقمية (< و<= و= و!= و> و>=) استخدام الإصدارات الدلالية الرقمية فقط (مثل 1.2.3)، ولا تتيح استخدام اللواحق أو الواصلات الخاصة بالإصدارات التجريبية (مثل -beta أو -rc). بالنسبة إلى سلاسل الإصدارات التي تحتوي على لواحق أو واصلات غير رقمية (مثل 1.5-beta)، استخدِم عوامل تشغيل السلسلة بدلاً من ذلك (مثل يحتوي على تعبير عادي أو يحتوي على أو يطابق تمامًا).

تكون مقارنات السلاسل لهذه القاعدة حسّاسة لحالة الأحرف. عند استخدام عامل التشغيل تطابق تمامًا أو تحتوي على أو لا تحتوي على أو تحتوي على تعبير عادي، يمكنك اختيار قيم متعددة.

عند استخدام عامل التشغيل يحتوي على تعبير عادي، يمكنك إنشاء تعبيرات عادية بتنسيق RE2. يمكن أن يتطابق التعبير العادي مع سلسلة الإصدار المستهدَف بالكامل أو مع جزء منها. يمكنك أيضًا استخدام الرمزين ^ و$ لمطابقة بداية سلسلة مستهدفة أو نهايتها أو السلسلة بأكملها.

رقم الإصدار بالنسبة إلى القيم النصية:
مطابقة تامة،
تحتوي على،
لا تحتوي على،
تعبير عادي

بالنسبة إلى القيم الرقمية:
=، ≠، >، ≥، <، ≤

حدِّد إصدارات تطبيقك التي تريد استهدافها.

قبل استخدام هذه القاعدة، يجب استخدام قاعدة معرّف التطبيق لاختيار تطبيق Apple أو Android مرتبط بمشروعك على Firebase.

يتوفّر عامل التشغيل هذا لتطبيقات Apple وAndroid فقط. ويتوافق مع CFBundleVersion للتطبيق على أجهزة Apple وversionCode على أجهزة Android. مقارنات السلاسل لهذه القاعدة حسّاسة لحالة الأحرف.

عند استخدام عامل التشغيل تطابق تمامًا أو تحتوي على أو لا تحتوي على أو تحتوي على تعبير عادي، يمكنك اختيار قيم متعدّدة.

عند استخدام عامل التشغيل يحتوي على تعبير عادي، يمكنك إنشاء تعبيرات عادية بتنسيق RE2. يمكن أن يتطابق التعبير العادي مع سلسلة إصدار الاستهداف بالكامل أو مع جزء منها. يمكنك أيضًا استخدام الرمزين ^ و$ لمطابقة بداية سلسلة مستهدفة أو نهايتها أو السلسلة بأكملها.

النظام الأساسي == iOS
Android
الويب
 
نظام التشغيل ==

حدِّد أنظمة التشغيل التي تريد استهدافها.

قبل استخدام هذه القاعدة، يجب استخدام قاعدة معرّف التطبيق لاختيار تطبيق ويب مرتبط بمشروع Firebase.

يتم تقييم هذه القاعدة على أنّها true لمثيل تطبيق ويب معيّن إذا كان نظام التشغيل وإصداره يتطابقان مع قيمة مستهدَفة في القائمة المحدّدة.
المتصفح ==

حدِّد المتصفّحات التي تريد استهدافها.

قبل استخدام هذه القاعدة، يجب استخدام قاعدة معرّف التطبيق لاختيار تطبيق ويب مرتبط بمشروع Firebase.

يتم تقييم هذه القاعدة على أنّها true لمثيل تطبيق ويب معيّن إذا كان المتصفّح وإصداره يتطابقان مع قيمة مستهدَفة في القائمة المحدّدة.
فئة الجهاز is, is not الجوال تقيّم هذه القاعدة ما إذا كان الجهاز الذي يصل إلى تطبيق الويب هو جهاز جوّال أو غير جوّال (كمبيوتر مكتبي أو وحدة تحكّم). لا يتوفّر نوع القاعدة هذا إلا لتطبيقات الويب.
اللغات في اختَر لغة واحدة أو أكثر. يتم تقييم هذه القاعدة على أنّها true لمثيل تطبيق معيّن إذا كان مثيل التطبيق هذا مثبّتًا على جهاز يستخدم إحدى اللغات المدرَجة.
البلد/المنطقة في اختَر منطقة واحدة أو أكثر أو بلدًا واحدًا أو أكثر. يتم تقييم هذه القاعدة على أنّها true لمثيل تطبيق معيّن إذا كان المثيل في أي من المناطق أو البلدان المدرَجة. يتم تحديد رمز البلد للجهاز باستخدام عنوان IP الخاص بالجهاز في الطلب أو رمز البلد الذي تحدّده &quot;إحصاءات Firebase&quot; (إذا تمت مشاركة بيانات &quot;إحصاءات Google&quot; مع Firebase).
شرائح الجمهور يتضمّن واحدًا على الأقل اختَر شريحة جمهور واحدة أو أكثر من قائمة تضم Google Analytics شريحة جمهور أعددتها لمشروعك.

تتطلّب هذه القاعدة قاعدة "رقم تعريف التطبيق" لاختيار تطبيق مرتبط بمشروع Firebase.

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

خاصيّة المستخدم بالنسبة إلى قيم السلسلة:
يحتوي على،
لا يحتوي على،
يطابق تمامًا،
يحتوي على تعبير عادي

بالنسبة إلى القيم الرقمية:
=، ≠، >، ≥، <، ≤

ملاحظة: على العميل، يمكنك ضبط قيم السلسلة فقط لخصائص المستخدم. بالنسبة إلى الشروط التي تستخدم عوامل تشغيل رقمية، تحوّل Remote Config قيمة خاصية المستخدم المقابلة إلى عدد صحيح/عشري.
اختَر من قائمة سمات مستخدمي Google Analytics المتاحة. لمعرفة كيفية استخدام خصائص المستخدمين لتخصيص تطبيقك لشرائح محدّدة جدًا من قاعدة المستخدمين، يُرجى الاطّلاع على Remote Config وخصائص المستخدمين.

لمزيد من المعلومات عن خصائص المستخدمين، يُرجى الاطّلاع على الدليلَين التاليَين:

عند استخدام عامل التشغيل يتطابق تمامًا مع أو يحتوي على أو لا يحتوي على أو يحتوي على تعبير عادي، يمكنك اختيار قيم متعدّدة.

عند استخدام عامل التشغيل يحتوي على تعبير عادي، يمكنك إنشاء تعبيرات عادية بتنسيق RE2. يمكن أن يتطابق التعبير العادي مع سلسلة إصدار الاستهداف بالكامل أو مع جزء منها. يمكنك أيضًا استخدام الرمزين ^ و$ لمطابقة بداية سلسلة مستهدفة أو نهايتها أو السلسلة بأكملها.

ملاحظة: لا تتوفّر خصائص المستخدمين المجمَّعة تلقائيًا عند إنشاء شروط Remote Config.
المستخدم في نسبة مئوية عشوائية شريط التمرير (في وحدة تحكّم Firebase) تستخدم REST API عوامل التشغيل <= و> وbetween. 0-100

استخدِم هذا الحقل لتطبيق تغيير على عيّنة عشوائية من نُسخ التطبيق (بأحجام عيّنات صغيرة تصل إلى %0 .0001)، وذلك باستخدام أداة شريط التمرير لتقسيم المستخدمين الذين تم ترتيبهم عشوائيًا (نُسخ التطبيق) إلى مجموعات.

يتم ربط كل مثيل تطبيق بشكل دائم برقم عشوائي صحيح أو كسري، وفقًا للقيمة الأولية المحدّدة في هذا المشروع.

ستستخدم القاعدة المفتاح التلقائي (الذي يظهر على شكل تعديل القيمة الأساسية في وحدة تحكّم Firebase) ما لم تعدّل القيمة الأساسية. يمكنك إعادة قاعدة إلى استخدام المفتاح التلقائي من خلال محو حقل القيمة الأولية.

لمعالجة نُسخ التطبيق نفسها باستمرار ضمن نطاقات نسب مئوية معيّنة، استخدِم القيمة الأساسية نفسها في جميع الشروط. أو اختَر مجموعة جديدة من نُسخ التطبيق المخصّصة عشوائيًا لنطاق نسبة مئوية معيّن من خلال تحديد مصدر جديد.

على سبيل المثال، لإنشاء شرطَين مرتبطَين ينطبق كل منهما على %5 من مستخدمي التطبيق غير المتداخلين، يمكنك ضبط شرط واحد لمطابقة نسبة مئوية تتراوح بين %0 و%5 وضبط شرط آخر لمطابقة نطاق يتراوح بين %5 و%10. للسماح لبعض المستخدمين بالظهور عشوائيًا في كلتا المجموعتين، استخدِم قيمًا أساسية مختلفة للقواعد ضمن كل شرط.

شريحة مستورَدة في اختَر شريحة واحدة أو أكثر من الشرائح المستورَدة. تتطلّب هذه القاعدة إعداد شرائح مستورَدة مخصّصة.
التاريخ/الوقت قبل، بعد تاريخ ووقت محدَّدان، إما في المنطقة الزمنية للجهاز أو في منطقة زمنية محدَّدة، مثل "(GMT+11) توقيت سيدني". تقارن هذه الدالة الوقت الحالي بوقت جلب الجهاز.
أول فتح قبل، بعد

استهداف المستخدمين استنادًا إلى المرة الأولى التي يفتحون فيها تطبيقك:

  • اختَر المستخدمون الجدد لاستهداف المستخدمين الذين يفتحون تطبيقك لأول مرة بعد تاريخ ووقت محدّدَين في المستقبل.
  • اختَر النطاق الزمني لاستهداف المستخدمين الذين يفتحون تطبيقك لأول مرة ضمن النطاق قبل التاريخ والوقت اللذين تحدّدهما أو بعدهما. اجمع بين شرطَي قبل وبعد لاستهداف المستخدمين ضمن نطاق زمني معيّن.

يتوفّر استهداف المستخدمين حسب أول عملية فتح بعد اختيار تطبيق Android أو iOS أو تطبيق ويب.

يتطلب حزم تطوير البرامج (SDK) التالية:

  • ‫Firebase SDK لـ Google Analytics
  • الإصدار 9.0.0 أو إصدار أحدث من حزمة تطوير البرامج (SDK) لمنصات Apple أو الإصدار 21.1.1 أو إصدار أحدث من حزمة تطوير البرامج (SDK) لنظام التشغيل Android (الإصدار 30.3.0 أو إصدار أحدث من Firebase BoM)، والإصدار 12.8.0 أو إصدار أحدث من حزمة تطوير البرامج (SDK) لـ JavaScript

يجب أيضًا تفعيل ميزة "Analytics" على الجهاز العميل أثناء حدث فتح التطبيق للمرة الأولى.

رقم تعريف التثبيت في حدِّد معرّف تثبيت واحدًا أو أكثر (ما يصل إلى 50 معرّفًا) لاستهدافه. يتم تقييم هذه القاعدة على أنّها true لعملية تثبيت معيّنة إذا كان رقم تعريف عملية التثبيت هذه ضِمن قائمة القيم المفصولة بفواصل.

لمعرفة كيفية الحصول على معرّفات التثبيت، يُرجى الاطّلاع على مقالة استرداد معرّفات العملاء.
المستخدم موجود (بلا عامل تشغيل) يستهدف جميع مستخدمي جميع التطبيقات ضمن المشروع الحالي.

استخدِم قاعدة الشرط هذه لمطابقة جميع المستخدمين ضمن المشروع، بغض النظر عن التطبيق أو المنصة.

إشارة مخصّصة بالنسبة إلى القيم النصية:
تحتوي على،
لا تحتوي على،
تطابق تمامًا،
تحتوي على تعبير عادي

بالنسبة إلى القيم الرقمية:
=، ≠، >، ≥، <، ≤

بالنسبة إلى قيم الإصدارات:
=، ≠، >، ≥، <، ≤

تكون مقارنات السلاسل لهذه القاعدة حسّاسة لحالة الأحرف. عند استخدام عوامل التشغيل "تطابق تمامًا" أو "تحتوي على" أو "لا تحتوي على" أو "تحتوي على تعبير عادي"، يمكنك اختيار قيم متعدّدة. عند استخدام عامل التشغيل "يحتوي على تعبير عادي"، يمكنك إنشاء تعبيرات عادية بتنسيق RE2. يمكن أن يتطابق التعبير العادي مع سلسلة إصدار الاستهداف بالكامل أو جزء منها. يمكنك أيضًا استخدام الرمزين ^ و $ لمطابقة بداية السلسلة المستهدفة أو نهايتها أو السلسلة بأكملها.

تتوفّر أنواع البيانات التالية لبيئات العملاء:
  • ‫iOS: عدد صحيح، عدد مزدوج
  • ‫Android: عدد صحيح، عدد صحيح طويل، عدد عشري مزدوج
  • الويب: رقم

رقم يمثّل أرقام الإصدارات المطلوب مطابقتها (على سبيل المثال، 2.1.0).

لمزيد من المعلومات عن شروط الإشارات المخصّصة والتعبيرات الشرطية التي يجب استخدامها، يُرجى الاطّلاع على شروط الإشارات المخصّصة والعناصر المستخدَمة لإنشاء الشروط.

مَعلمات البحث وشروطه

يمكنك البحث في مفاتيح المَعلمات وقيم المَعلمات والشروط الخاصة بمشروعك من وحدة تحكّم Firebase باستخدام مربّع البحث في أعلى صفحة DevOps والتفاعل > الإعداد عن بُعد > المَعلمات.

الحدود القصوى للمَعلمات والشروط

ضمن مشروع Firebase، يمكنك استخدام ما يصل إلى 3,000 مَعلمة و2,000 شرط. يمكن أن يصل طول مفاتيح المَعلمات إلى 256 حرفًا، ويجب أن تبدأ بشرطة سفلية أو حرف باللغة الإنجليزية (A-Z أو a-z)، ويمكن أن تتضمّن أيضًا أرقامًا. لا يمكن أن يتجاوز إجمالي طول سلاسل قيم المَعلمات ضمن المشروع الواحد 1,000,000 حرف. بالإضافة إلى ذلك، يمكن أن تتضمّن قواعد الشروط المستندة إلى خصائص المستخدمين ما يصل إلى 100 قيمة لخصائص المستخدمين. للاطّلاع على قائمة كاملة بالحدود القصوى، يُرجى مراجعة الحصص والحدود القصوى.

الاطّلاع على التغييرات في المَعلمات والشروط

يمكنك الاطّلاع على آخر التغييرات التي تم إجراؤها على نماذج "Remote Config" من خلال وحدة تحكّم "Firebase". لكل مَعلمة وشرط فردي، يمكنك إجراء ما يلي:

  • يمكنك الاطّلاع على اسم المستخدم الذي أجرى آخر تعديل على المَعلمة أو الشرط.

  • إذا حدث التغيير في اليوم نفسه، يمكنك الاطّلاع على عدد الدقائق أو الساعات التي انقضت منذ نشر التغيير في نموذج Remote Config النشط.

  • إذا حدث التغيير قبل يوم واحد أو أكثر، يمكنك الاطّلاع على تاريخ نشر التغيير في نموذج "Remote Config" النشط.

سجلّ التغييرات للمَعلمات

في وحدة تحكّم Firebase، انتقِل إلى صفحة DevOps & Engagement > الإعداد عن بُعد > المَعلمات. يعرض عمود تاريخ آخر نشر آخر مستخدم عدّل كل مَعلمة وتاريخ آخر نشر للتغيير:

  • لعرض البيانات الوصفية للتغييرات في المَعلمات المجمّعة، وسِّع مجموعة المَعلمات.

  • للترتيب تصاعديًا أو تنازليًا حسب تاريخ النشر، انقر على تصنيف عمود تاريخ آخر نشر.

سجلّ التغييرات للشروط

في وحدة تحكّم Firebase، انتقِل إلى صفحة DevOps & Engagement > الإعداد عن بُعد > الشروط. يمكنك الاطّلاع على آخر مستخدم عدّل الشرط وتاريخ تعديله بجانب تاريخ آخر تعديل ضمن كل شرط.

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

لضبط مشروعك وتطبيقك على Firebase لاستخدام Remote Config، يُرجى الاطّلاع على بدء استخدام Firebase Remote Config.