عند استخدام Firebase Remote Config لنشر الإعدادات لتطبيق لديه قاعدة مستخدمين نشطة، عليك التأكّد من تنفيذ ذلك بشكل صحيح. يمكنك استخدام تجارب A/B Testing لتحديد ما يلي على أفضل نحو:
- أفضل طريقة لتنفيذ ميزة لتحسين تجربة المستخدم في كثير من الأحيان، لا يعلم مطوّرو التطبيقات أنّ المستخدمين لا تعجبهم ميزة جديدة أو تجربة مستخدم معدَّلة إلا بعد انخفاض تقييم تطبيقهم في متجر التطبيقات. يمكن أن يساعدك A/B Testing في قياس ما إذا كان المستخدمون يفضّلون الإصدارات الجديدة من الميزات أو يفضّلون التطبيق كما هو. بالإضافة إلى ذلك، يضمن الاحتفاظ بمعظم المستخدمين في مجموعة أساسية أن يتمكن معظم قاعدة المستخدمين من الاستمرار في استخدام تطبيقك دون مواجهة أي تغييرات في سلوكه أو مظهره حتى تنتهي التجربة.
- أفضل طريقة لتحسين تجربة المستخدم لتحقيق هدف تجاري في بعض الأحيان، يتم تنفيذ تغييرات على المنتج لزيادة مقياس مثل الإيرادات أو الاحتفاظ بالعملاء. باستخدام A/B Testing، يمكنك تحديد هدفك التجاري، وتُجري Firebase التحليل الإحصائي لتحديد ما إذا كانت الصيغة تتفوّق على المرجع لهدفك المحدّد.
لإجراء اختبار A/B على صيغ الميزات باستخدام قيمة أساسية، اتّبِع الخطوات التالية:
- أنشئ تجربتك.
- إدارة تجربتك
إنشاء تجربة
تتيح لك تجربة Remote Config تقييم صيغ متعددة لمَعلمة واحدة أو أكثر من مَعلمات Remote Config.
يُرجى التأكّد من تفعيل Google Analytics في مشروعك لكي تتمكّن التجربة من الوصول إلى بيانات Analytics.
إذا لم تفعّل "Google Analytics" عند إنشاء مشروعك، يمكنك تفعيله في علامة التبويب
الإعدادات > عمليات الدمج ضمن وحدة تحكّم "Firebase".في وحدة تحكّم Firebase، انتقِل إلى DevOps & Engagement > A/B Testing
انقر على إنشاء تجربة، ثم اختَر Remote Config عندما يُطلب منك تحديد الخدمة التي تريد تجربتها.
في قسم الصيغ، اختَر صيغة أساسية وصيغة واحدة على الأقل للتجربة. يمكنك إضافة مَعلمة واحدة أو أكثر لتجربتها. يمكنك تكرار هذه الخطوة لإضافة مَعلمات متعددة إلى تجربتك.
(اختياري) لإضافة أكثر من صيغة واحدة إلى تجربتك، انقر على إضافة صيغة أخرى.
تغيير مَعلمة واحدة أو أكثر لصيغ معيّنة وتكون أي مَعلمات لم يتم تغييرها هي نفسها للمستخدمين غير المشمولين في التجربة.
وسِّع القيم التقديرية للصيغ لعرض القيمة التقديرية للصيغة أو تغييرها في التجربة. بشكل تلقائي، يتم منح جميع الصيغ قيمًا تقديرية متساوية. يُرجى العلم أنّ القيم التقديرية غير المتساوية يمكن أن تؤدي إلى زيادة الوقت المُستغرَق في جمع البيانات ولا يمكن تغييرها بعد بدء التجربة.
حدِّد معايير الاستهداف لتجربتك باستخدام Remote Config شرط:
إعادة استخدام شرط حالي: إذا كان هناك شرط حالي في نموذج Remote Config يتطابق مع جمهورك المستهدف، اختَره من القائمة.
يمكن أن يؤدي تعديل شرط مشترك أثناء تشغيل تجربة نشطة إلى تغيير عملية تحديد الصيغ وإبطال قياسات التجربة.التحقّق من ترتيب تقييم الشروط: تأكَّد من تنظيم الشروط في صفحة الشروط حسب ترتيب الأولوية الصحيح. بما أنّ Remote Config يقيّم الشروط بشكل تسلسلي من الأعلى إلى الأسفل، يمكن أن تمنع الشروط الأخرى ذات الأولوية الأعلى عددًا كافيًا من المستخدمين من الوصول إلى الشرط المرتبط بتجربتك.
إنشاء شرط جديد: إذا لم يستوفِ أي شرط حالي متطلبات الاستهداف، أو إذا كنت تفضّل تكرار شرط حالي (على سبيل المثال، لتجنُّب قفل شرط تتم مشاركته بواسطة مَعلمات أخرى)، يمكنك إنشاء شرط جديد عن طريق اختيار التطبيق الذي يستخدم تجربتك أولاً. إذا كانت المَعلمة التي تختبرها تستخدم أيضًا الشرط الحالي (أو شرطًا آخر متداخلاً)، تأكَّد من وضع شرط التجربة الجديد أعلى الشرط الحالي في علامة التبويب الشروط (ما يمنحه أولوية تقييم أعلى)، وإلا سيتطابق المستخدمون مع الشرط الحالي أولاً ولن يتدفقوا إلى التجربة.
يمكنك بعد ذلك استهداف مجموعة فرعية معيّنة من المستخدمين من خلال النقر على و وتحديد خيار واحد أو أكثر من القائمة التالية:
- الإصدار: إصدار واحد أو أكثر من تطبيقك
- رقم الإصدار: رقم الإصدار (Apple) أو رمز الإصدار (Android) لتطبيقك
- النظام الأساسي: نظام أساسي واحد أو أكثر (iOS أو Android أو الويب) لاستهدافه
- نظام التشغيل: يمكنك استهداف مستخدمي تطبيقات الويب استنادًا إلى نظام التشغيل والإصدار الذي يستخدمونه
- المتصفّح: استهداف مستخدمي تطبيقات الويب استنادًا إلى متصفّح الويب وإصدار المتصفّح
- فئة الجهاز: استهدِف مستخدمي تطبيقات الويب استنادًا إلى ما إذا كان جهازهم جوّالاً أو غير جوّال
- اللغات: لغة واحدة أو أكثر وإعدادات محلية تُستخدَم لاختيار المستخدمين الذين قد يتم تضمينهم في التجربة
- البلد أو المنطقة: بلد أو منطقة واحدة أو أكثر لاختيار المستخدمين الذين يجب تضمينهم في التجربة
- شريحة الجمهور المستهدَفة: Analytics شريحة جمهور مستخدَمة لاستهداف المستخدمين الذين قد يتم تضمينهم في التجربة
- خاصية المستخدم: خاصية مستخدم واحدة أو أكثر في Analytics لاختيار المستخدمين الذين قد يتم تضمينهم في التجربة
- المستخدمون في نسبة مئوية عشوائية: يمكنك استهداف نسبة مئوية عشوائية من المستخدمين ضمن نطاق مئوي محدّد
- الشريحة المستورَدة: يمكنك استهداف المستخدمين الذين ينتمون إلى شرائح مخصّصة مستورَدة تم تحميلها إلى مشروعك
- التاريخ/الوقت: استهداف المستخدمين استنادًا إلى نافذة زمنية محدّدة للتاريخ والوقت
- الفتح لأول مرة: يمكنك استهداف المستخدمين استنادًا إلى المرة الأولى التي فتحوا فيها تطبيقك
- رقم تعريف التثبيت: يمكنك استهداف أجهزة اختبارية أو نُسخ افتراضية محدّدة من العميل باستخدام أرقام تعريف Firebase Installation ID (FID)
- المستخدم موجود: استهداف جميع المستخدمين في جميع التطبيقات في المشروع
- إشارة مخصّصة: يمكنك استهداف المستخدمين استنادًا إلى إشارات مخصّصة من جهة العميل تتضمّن مفاتيح وقيمًا يتم تمريرها أثناء التشغيل
اضبط نسبة الظهور: أدخِل النسبة المئوية لقاعدة مستخدمي تطبيقك التي تطابق المعايير المحدّدة ضمن المستخدمون المستهدَفون والتي تريد تقسيمها بالتساوي بين الإصدار الأساسي وإصدار واحد أو أكثر من الإصدارات التجريبية. ويمكن أن تكون هذه النسبة أي نسبة مئوية بين %0 و%100. يتم تعيين المستخدمين عشوائيًا لكل تجربة، بما في ذلك التجارب المكرّرة.
يمكنك اختياريًا ضبط حدث تفعيل لضمان احتساب البيانات الواردة من المستخدمين الذين تسبّبوا في ظهور حدث Analytics لأول مرة فقط في تجربتك. يُرجى العِلم أنّ جميع المستخدمين الذين يتطابقون مع مَعلمات الاستهداف سيتلقّون قيمًا تجريبية لـ Remote Config، ولكن سيتم تضمين المستخدمين الذين يشغّلون حدث تفعيل فقط في نتائج تجربتك.
لضمان صحة التجربة، تأكَّد من أنّ الحدث الذي تختاره يحدث بعد أن يفعّل تطبيقك قيم الإعدادات التي تم جلبها. بالإضافة إلى ذلك، لا يمكن استخدام الأحداث التالية لأنّها تحدث دائمًا قبل تفعيل القيم التي تم جلبها:
app_installapp_removeapp_update
يجب ألا يتم استخدام حدث Analytics الذي تختاره كحدث تفعيل كمقياس أساسي (أو كمقياس إضافي) في التجربة نفسها. سيؤدي ذلك إلى ظهور خطأ في عملية التحقّق في وحدة تحكُّم Firebase ومنع إطلاق تجربتك.
بالنسبة إلى أهداف التجربة، اختَر المقياس الأساسي الذي تريد تتبُّعه، وأضِف أي مقاييس أخرى تريد تتبُّعها من القائمة. وتشمل هذه الأهداف المضمّنة (عمليات الشراء والإيرادات والاحتفاظ بالمستخدمين والمستخدمين الذين لم يواجهوا أي أعطال وما إلى ذلك) وأحداث الإحالات الناجحة في "Analytics" وأحداث "Analytics" الأخرى. عند الانتهاء، انقر على التالي.
انقر على حفظ لحفظ تجربتك. يجب نشر النموذج لبدء تشغيل تجربتك.
يُسمح لك بإجراء ما يصل إلى 300 تجربة لكل مشروع (بما في ذلك عمليات الطرح)، ويمكن أن تتألف من 24 تجربة وعملية طرح قيد التشغيل، مع اعتبار الباقي تجارب مكتملة.
إدارة تجربتك
عند إنشاء تجربة باستخدام Remote Config، يمكنك بدء تجربتك ومراقبتها أثناء تشغيلها وزيادة عدد المستخدمين المشمولين في تجربتك قيد التشغيل.
عند انتهاء التجربة، يمكنك تدوين الإعدادات التي استخدمتها الصيغة الفائزة، ثم تطبيق هذه الإعدادات على جميع المستخدمين. أو يمكنك إجراء تجربة أخرى.
تعديل تجربة
- في قسم DevOps والتفاعل ضمن قائمة التنقّل في وحدة تحكّم Firebase، انقر على Remote Config.
- انقر على علامة التبويب اختبارات A/B.
- انقر على قيد التنفيذ، ثم انقر على تجربة تريد تعديلها.
- انقر على قائمة السياق () ثم انقر على تعديل التجربة قيد التنفيذ.
- للتحقّق من أنّ تطبيقك يضم مستخدمين سيتم تضمينهم في تجربتك، وسِّع التفاصيل وابحث عن رقم أكبر من 0% في قسم الاستهداف والتوزيع (على سبيل المثال، %1 من المستخدمين المطابقين للمعايير).
مراقبة تجربة
بعد تشغيل التجربة لفترة من الوقت، يمكنك الاطّلاع على مستوى تقدّمها ومعرفة النتائج التي حقّقتها للمستخدمين الذين شاركوا في تجربتك حتى الآن.
- في قسم DevOps والتفاعل ضمن قائمة التنقّل في وحدة تحكّم Firebase، انقر على Remote Config.
- انقر على علامة التبويب اختبارات A/B.
انقر على قيد التشغيل، ثم انقر على عنوان تجربتك أو ابحث عنه. في هذه الصفحة، يمكنك الاطّلاع على إحصاءات مختلفة مرصودة ومستندة إلى نماذج حول تجربتك الجارية، بما في ذلك ما يلي:
- النسبة المئوية للاختلاف عن المرجع: مقياس لتحسين مقياس معيّن لصيغة معيّنة مقارنةً بالمرجع. يتم احتسابها من خلال مقارنة نطاق القيمة لنسخة الإعلان بنطاق القيمة للمجموعة المرجعية.
- احتمالية تجاوز المعدّل المرجعي: الاحتمالية المقدَّرة لتجاوز صيغة معيّنة للمعدّل المرجعي للمقياس المحدّد
- observed_metric لكل مستخدم: استنادًا إلى نتائج التجربة، هذا هو النطاق المتوقّع لقيمة المقياس بمرور الوقت.
- إجمالي observed_metric: القيمة التراكمية التي تم رصدها للإصدار الأساسي أو الصيغة تُستخدم القيمة لقياس مدى جودة أداء كل صيغة تجربة، وتُستخدم لاحتساب التحسين ونطاق القيمة واحتمالية تجاوز المعدّل المرجعي واحتمالية أن تكون الصيغة الأفضل. استنادًا إلى المقياس الذي يتم قياسه، قد يحمل هذا العمود التصنيف "المدة لكل مستخدم" أو "الإيرادات لكل مستخدم" أو "معدل الاحتفاظ بالمستخدمين" أو "معدل الإحالات الناجحة".
بعد تنفيذ تجربتك لبعض الوقت (14 يومًا في "Remote Config")، تشير البيانات في هذه الصفحة إلى الصيغة "الرائدة"، إن وُجدت. تكون بعض القياسات مصحوبة برسم بياني شريطي يعرض البيانات بتنسيق مرئي.
طرح تجربة لجميع المستخدمين
بعد تنفيذ التجربة لمدة كافية للحصول على صيغة "رائدة" أو صيغة تحقّق أفضل أداء في ما يتعلّق بمقياس هدفك، يمكنك طرح التجربة على جميع المستخدمين. يتيح لك ذلك اختيار صيغة لنشرها لجميع المستخدمين من الآن فصاعدًا. حتى في حال لم تُنشئ تجربتك صيغة واضحة تحقّق أفضل أداء، لا يزال بإمكانك اختيار طرح صيغة لجميع المستخدمين.
- في قسم DevOps والتفاعل ضمن قائمة التنقّل في وحدة تحكّم Firebase، انقر على Remote Config.
- انقر على علامة التبويب اختبارات A/B.
- انقر على مكتملة أو قيد التشغيل، ثم انقر على تجربة تريد طرحها لجميع المستخدمين، ثم انقر على قائمة السياق () طرح الصيغة.
- يمكنك طرح تجربتك لجميع المستخدمين باتّباع الخطوات التالية:
- بالنسبة إلى تجربة Remote Config، اختَر صيغة لتحديد قيم مَعلمات Remote Config التي تريد تعديلها. تتم إضافة معايير الاستهداف التي تم تحديدها عند إنشاء التجربة كشرط جديد في نموذجك، وذلك للتأكّد من أنّ عملية الطرح لن تؤثر إلا في المستخدمين الذين تستهدفهم التجربة. بعد النقر على مراجعة في ميزة "الإعداد عن بُعد" للاطّلاع على التغييرات، انقر على نشر التغييرات لإكمال عملية الطرح.
توسيع نطاق تجربة
إذا وجدت أنّ التجربة لا تجذب عددًا كافيًا من المستخدمين لكي يتمكّن A/B Testing من تحديد الصيغة الرائدة، يمكنك زيادة توزيع تجربتك للوصول إلى نسبة أكبر من قاعدة مستخدمي التطبيق.
- في قسم DevOps والتفاعل ضمن قائمة التنقّل في وحدة تحكّم Firebase، انقر على Remote Config.
- انقر على علامة التبويب اختبارات A/B.
- اختَر التجربة الجارية التي تريد تعديلها.
- في نظرة عامة على التجربة، انقر على قائمة السياق ()، ثم انقر على تعديل التجربة قيد التنفيذ.
- يعرض مربّع الحوار الاستهداف خيارًا لزيادة النسبة المئوية للمستخدمين المشاركين في التجربة الجارية. اختَر رقمًا أكبر من النسبة المئوية الحالية وانقر على نشر. سيتم طرح التجربة على النسبة المئوية للمستخدمين التي حدّدتها.
تكرار تجربة
- في قسم DevOps والتفاعل ضمن قائمة التنقّل في وحدة تحكّم Firebase، انقر على Remote Config.
- انقر على علامة التبويب اختبارات A/B.
- اختَر التجربة الجارية أو المكتملة التي تريد إيقافها.
- انقر على مكتملة أو قيد التنفيذ، ثم مرِّر مؤشر الماوس فوق تجربتك، وانقر على قائمة السياق ()، ثم انقر على تكرار التجربة أو إيقاف التجربة.
إيقاف تجربة
- في قسم DevOps والتفاعل ضمن قائمة التنقّل في وحدة تحكّم Firebase، انقر على Remote Config.
- انقر على علامة التبويب اختبارات A/B.
- اختَر التجربة الجارية أو المكتملة التي تريد إيقافها.
- انقر على مكتملة أو قيد التنفيذ، ثم مرِّر المؤشر فوق تجربتك، وانقر على قائمة السياق ()، ثم انقر على إيقاف التجربة.
تحديد هوية عميل الويب واستمرار التجربة
عندما يشغّل المستخدم تطبيق ويب باستخدام Firebase A/B Testing في متصفّح لأول مرة، يتم إنشاء معرّف تثبيت Firebase فريد (FID). يتم تخزين معرّف FID هذا بشكل دائم في IndexedDB في المتصفّح لتحديد مثيل التطبيق في جميع الجلسات.
يستخدم Firebase A/B Testing معرّف FID لتوزيع المستخدمين على صيغ التجربة، بينما يستخدمه Google Analytics لتجميع الأحداث من أجل قياس سلوك المستخدمين وتحليله ضمن كل صيغة.
بما أنّ معرّف مثيل Firebase يتم تخزينه في IndexedDB، تتعامل Firebase A/B Testing مع المستخدم على أنّه مستخدم جديد إذا وصل إلى تطبيقك من متصفّح مختلف أو في نافذة تصفّح متخفّي أو إذا محا IndexedDB في المتصفّح. هذا يعني أنّه قد يتم تضمين مستخدم في صيغ تجارب مختلفة عند استخدام متصفّحات أو جلسات تصفّح مختلفة.
استهداف المستخدمين
يمكنك استهداف المستخدمين الذين تريد تضمينهم في تجربتك باستخدام معايير استهداف المستخدمين التالية.
تتوفّر أنواع القواعد التالية في وحدة تحكّم "Firebase". تتوفّر ميزات مكافئة في واجهة برمجة التطبيقات Remote Config REST، كما هو موضّح في مرجع التعبير الشرطي.
| نوع القاعدة | المشغِّلون | القيم | ملاحظة |
| التطبيق | == | اختَر من قائمة معرّفات التطبيقات المرتبطة بمشروعك على Firebase. | عند إضافة تطبيق إلى Firebase، عليك إدخال معرّف حزمة أو اسم حزمة Android يحدّد سمة يتم عرضها على أنّها رقم تعريف التطبيق في قواعد Remote Config.
استخدِم هذه السمة على النحو التالي:
|
| إصدار التطبيق |
بالنسبة إلى القيم النصية: تطابق تام، تحتوي على، لا تحتوي على، تحتوي على تعبير عادي بالنسبة إلى القيم الرقمية: <، <=، =، !=، >، >= |
حدِّد إصدارات تطبيقك التي تريد استهدافها. قبل استخدام هذه القاعدة، يجب استخدام قاعدة معرّف التطبيق لاختيار تطبيق Android أو Apple مرتبط بمشروع Firebase. |
بالنسبة إلى أنظمة Apple الأساسية: استخدِم CFBundleShortVersionString الخاص بالتطبيق. ملاحظة: تأكَّد من أنّ تطبيق Apple يستخدم الإصدار 6.24.0 أو إصدارًا أحدث من حزمة تطوير البرامج (SDK) لمنصات Apple في Firebase، لأنّ CFBundleShortVersionString لا يتم إرساله في الإصدارات السابقة (يُرجى الاطّلاع على ملاحظات الإصدار). على أجهزة Android: استخدِم versionName للتطبيق. ملاحظة: تتيح عوامل المقارنة الرقمية ( تكون مقارنات السلاسل لهذه القاعدة حسّاسة لحالة الأحرف. عند استخدام عامل التشغيل تطابق تمامًا أو تحتوي على أو لا تحتوي على أو تحتوي على تعبير عادي، يمكنك اختيار قيم متعددة. عند استخدام عامل التشغيل يحتوي على تعبير عادي، يمكنك إنشاء تعبيرات عادية بتنسيق RE2. يمكن أن يتطابق التعبير العادي مع سلسلة الإصدار المستهدَف بالكامل أو مع جزء منها. يمكنك أيضًا استخدام الرمزين ^ و$ لمطابقة بداية سلسلة مستهدفة أو نهايتها أو السلسلة بأكملها. |
| رقم الإصدار |
بالنسبة إلى القيم النصية: مطابقة تامة، تحتوي على، لا تحتوي على، تعبير عادي بالنسبة إلى القيم الرقمية: =، ≠، >، ≥، <، ≤ |
حدِّد إصدارات تطبيقك التي تريد استهدافها. قبل استخدام هذه القاعدة، يجب استخدام قاعدة معرّف التطبيق لاختيار تطبيق Apple أو Android مرتبط بمشروعك على Firebase. |
يتوفّر عامل التشغيل هذا لتطبيقات Apple وAndroid فقط. ويتوافق مع CFBundleVersion للتطبيق على أجهزة Apple وversionCode على أجهزة Android. مقارنات السلاسل لهذه القاعدة حسّاسة لحالة الأحرف. عند استخدام عامل التشغيل تطابق تمامًا أو تحتوي على أو لا تحتوي على أو تحتوي على تعبير عادي، يمكنك اختيار قيم متعدّدة. عند استخدام عامل التشغيل يحتوي على تعبير عادي، يمكنك إنشاء تعبيرات عادية بتنسيق RE2. يمكن أن يتطابق التعبير العادي مع سلسلة إصدار الاستهداف بالكامل أو مع جزء منها. يمكنك أيضًا استخدام الرمزين ^ و$ لمطابقة بداية سلسلة مستهدفة أو نهايتها أو السلسلة بأكملها. |
| النظام الأساسي | == | iOS Android الويب |
|
| نظام التشغيل | == |
حدِّد أنظمة التشغيل التي تريد استهدافها. قبل استخدام هذه القاعدة، يجب استخدام قاعدة معرّف التطبيق لاختيار تطبيق ويب مرتبط بمشروع Firebase. |
يتم تقييم هذه القاعدة على أنّها true لمثيل تطبيق ويب معيّن إذا كان نظام التشغيل وإصداره يتطابقان مع قيمة مستهدَفة في القائمة المحدّدة.
|
| المتصفح | == |
حدِّد المتصفّحات التي تريد استهدافها. قبل استخدام هذه القاعدة، يجب استخدام قاعدة معرّف التطبيق لاختيار تطبيق ويب مرتبط بمشروع Firebase. |
يتم تقييم هذه القاعدة على أنّها true لمثيل تطبيق ويب معيّن إذا كان المتصفّح وإصداره يتطابقان مع قيمة مستهدَفة في القائمة المحدّدة.
|
| فئة الجهاز | is, is not | الجوال | تقيّم هذه القاعدة ما إذا كان الجهاز الذي يصل إلى تطبيق الويب هو جهاز جوّال أو غير جوّال (كمبيوتر مكتبي أو وحدة تحكّم). لا يتوفّر نوع القاعدة هذا إلا لتطبيقات الويب. |
| اللغات | في | اختَر لغة واحدة أو أكثر. | يتم تقييم هذه القاعدة على أنّها true لمثيل تطبيق معيّن إذا كان مثيل التطبيق هذا مثبّتًا على جهاز يستخدم إحدى اللغات المدرَجة.
|
| البلد/المنطقة | في | اختَر منطقة واحدة أو أكثر أو بلدًا واحدًا أو أكثر. | يتم تقييم هذه القاعدة على أنّها true لمثيل تطبيق معيّن إذا كان
المثيل في أي من المناطق أو البلدان المدرَجة. يتم تحديد رمز البلد للجهاز باستخدام عنوان IP الخاص بالجهاز في الطلب أو رمز البلد الذي تحدّده "إحصاءات Firebase" (إذا تمت مشاركة بيانات "إحصاءات Google" مع Firebase).
|
| شرائح الجمهور | يتضمّن واحدًا على الأقل | اختَر شريحة جمهور واحدة أو أكثر من قائمة تضم Google Analytics شريحة جمهور أعددتها لمشروعك. | تتطلّب هذه القاعدة قاعدة "رقم تعريف التطبيق" لاختيار تطبيق مرتبط بمشروع Firebase.
ملاحظة: بما أنّ العديد من شرائح جمهور Analytics يتم تحديدها من خلال الأحداث أو خصائص المستخدمين، والتي يمكن أن تستند إلى إجراءات مستخدمي التطبيق، قد يستغرق تطبيق قاعدة المستخدم في شريحة الجمهور بعض الوقت على مثيل تطبيق معيّن. وهذا يعني أنّه حتى إذا كان المستخدم مؤهلاً من الناحية الفنية للانضمام إلى شريحة جمهور،
إذا لم تكن Analytics قد أضافت المستخدم بعد إلى شريحة الجمهور عند تنفيذ
|
| خاصيّة المستخدم |
بالنسبة إلى قيم السلسلة:
يحتوي على، لا يحتوي على، يطابق تمامًا، يحتوي على تعبير عادي بالنسبة إلى القيم الرقمية: =، ≠، >، ≥، <، ≤ ملاحظة: على العميل، يمكنك ضبط قيم السلسلة فقط لخصائص المستخدم. بالنسبة إلى الشروط التي تستخدم عوامل تشغيل رقمية، تحوّل 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) التالية:
يجب أيضًا تفعيل ميزة "Analytics" على الجهاز العميل أثناء حدث فتح التطبيق للمرة الأولى. |
| رقم تعريف التثبيت | في | حدِّد معرّف تثبيت واحدًا أو أكثر (ما يصل إلى 50 معرّفًا) لاستهدافه. | يتم تقييم هذه القاعدة على أنّها true لعملية تثبيت معيّنة إذا كان
رقم تعريف عملية التثبيت هذه ضِمن قائمة القيم المفصولة بفواصل.
لمعرفة كيفية الحصول على معرّفات التثبيت، يُرجى الاطّلاع على مقالة استرداد معرّفات العملاء. |
| المستخدم موجود | (بلا عامل تشغيل) | يستهدف جميع مستخدمي جميع التطبيقات ضمن المشروع الحالي. |
استخدِم قاعدة الشرط هذه لمطابقة جميع المستخدمين ضمن المشروع، بغض النظر عن التطبيق أو المنصة. |
| إشارة مخصّصة |
بالنسبة إلى القيم النصية:
تحتوي على، لا تحتوي على، تطابق تمامًا، تحتوي على تعبير عادي بالنسبة إلى القيم الرقمية: =، ≠، >، ≥، <، ≤ بالنسبة إلى قيم الإصدارات: =، ≠، >، ≥، <، ≤ |
تكون مقارنات السلاسل لهذه القاعدة حسّاسة لحالة الأحرف. عند استخدام عوامل التشغيل "تطابق تمامًا" أو "تحتوي على" أو "لا تحتوي على" أو "تحتوي على تعبير عادي"، يمكنك اختيار قيم متعدّدة. عند استخدام عامل التشغيل "يحتوي على تعبير عادي"، يمكنك إنشاء تعبيرات عادية بتنسيق RE2. يمكن أن يتطابق التعبير العادي مع سلسلة إصدار الاستهداف بالكامل أو جزء منها. يمكنك أيضًا استخدام الرمزين ^ و $ لمطابقة بداية السلسلة المستهدفة أو نهايتها أو السلسلة بأكملها. تتوفّر أنواع البيانات التالية لبيئات العملاء:
رقم يمثّل أرقام الإصدارات المطلوب مطابقتها (على سبيل المثال، 2.1.0). |
لمزيد من المعلومات عن شروط الإشارات المخصّصة والتعبيرات الشرطية التي يجب استخدامها، يُرجى الاطّلاع على شروط الإشارات المخصّصة والعناصر المستخدَمة لإنشاء الشروط. |
A/B Testing مقياس
عند إنشاء تجربتك، يمكنك اختيار مقياس أساسي أو مقياس هدف يُستخدَم لتحديد الصيغة الفائزة. يجب أيضًا تتبُّع المقاييس الأخرى لمساعدتك في فهم أداء كل صيغة تجربة بشكل أفضل وتتبُّع المؤشرات المهمة التي قد تختلف لكل صيغة، مثل الحفاظ على المستخدمين واستقرار التطبيق وإيرادات عمليات الشراء داخل التطبيق. يمكنك تتبُّع ما يصل إلى خمسة مقاييس غير مرتبطة بالأهداف في تجربتك.
على سبيل المثال، لنفترض أنّك تستخدم Remote Config لإطلاق مسارَين مختلفَين للعبة في تطبيقك وتريد تحسين عمليات الشراء داخل التطبيق وإيرادات الإعلانات، ولكنّك تريد أيضًا تتبُّع ثبات كل صيغة ومعدّل الحفاظ على المستخدمين فيها. في هذه الحالة، يمكنك اختيار إجمالي الإيرادات المقدَّرة كمقياس هدفك لأنّه يتضمّن إيرادات عمليات الشراء داخل التطبيق وإيرادات الإعلانات، ثم يمكنك إضافة ما يلي في المقاييس الأخرى المطلوب تتبُّعها:
- لتتبُّع معدّل الحفاظ على المستخدمين يوميًا وأسبوعيًا، أضِف الحفاظ على المستخدمين (من يومَين إلى 3 أيام) والحفاظ على المستخدمين (من 4 إلى 7 أيام).
- لمقارنة الثبات بين مسارَي اللعبة، أضِف المستخدمون الذين لم يواجهوا أي تعطّل.
- للاطّلاع على طرق عرض أكثر تفصيلاً لكل نوع من أنواع الإيرادات، أضِف إيرادات الشراء وإيرادات الإعلانات المقدَّرة.
تقدّم الجداول التالية تفاصيل حول كيفية احتساب مقاييس الأهداف والمقاييس الأخرى.
مقاييس الهدف
| المقياس | الوصف |
|---|---|
| المستخدمون الذين لم يواجههم أي تعطُّل | النسبة المئوية للمستخدمين الذين لم يواجهوا أخطاء في تطبيقك تم رصدها من خلال حزمة تطوير البرامج (SDK) لـ "Firebase Crashlytics" أثناء التجربة.
ملاحظة: لا يتوفّر Firebase Crashlytics لتطبيقات الويب. |
| إيرادات الإعلانات المقدَّرة | الأرباح المقدّرة من الإعلانات |
| إجمالي الإيرادات المقدَّرة | القيمة المجمّعة لعمليات الشراء وإيرادات الإعلانات المقدَّرة |
| الأرباح من عمليات الشراء | القيمة المجمّعة لجميع أحداث purchase وin_app_purchase
|
| الاحتفاظ بالمستخدمين (يوم واحد) | يشير ذلك إلى عدد المستخدمين الذين يعودون إلى تطبيقك يوميًا. |
| الاحتفاظ بالبيانات (من يومَين إلى 3 أيام) | عدد المستخدمين الذين يعودون إلى تطبيقك خلال يومَين أو ثلاثة أيام |
| الاحتفاظ بالمستخدمين (من 4 إلى 7 أيام) | يشير ذلك إلى عدد المستخدمين الذين يعودون إلى تطبيقك خلال فترة تتراوح بين 4 و7 أيام. |
| الاحتفاظ بالمستخدمين (من 8 إلى 14 يومًا) | عدد المستخدمين الذين يعودون إلى تطبيقك خلال فترة تتراوح بين 8 و14 يومًا |
| الاحتفاظ بالبيانات (أكثر من 15 يومًا) | عدد المستخدمين الذين يعودون إلى تطبيقك بعد 15 يومًا أو أكثر من آخر استخدام له |
| first_open | هو حدث Analytics يتم تشغيله عندما يفتح المستخدم تطبيقًا لأول مرة بعد تثبيته أو إعادة تثبيته. يُستخدَم كجزء من مسار الإحالة الناجحة. |
المقاييس الأخرى
| المقياس | الوصف |
|---|---|
| notification_dismiss | حدث Analytics يتم تشغيله عند رفض إشعار أرسلته أداة إنشاء الإشعارات (على Android فقط). |
| notification_receive | حدث Analytics يتم تشغيله عند تلقّي إشعار مُرسَل من "منشئ الإشعارات" أثناء تشغيل التطبيق في الخلفية (على أجهزة Android فقط). |
| os_update | حدث Analytics يتتبّع وقت تحديث نظام تشغيل الجهاز إلى إصدار جديد.ولمزيد من المعلومات، اطّلِع على الأحداث المجمّعة تلقائيًا.
لا يتوفّر هذا المقياس لتطبيقات الويب. |
| screen_view | هو حدث Analytics يتتبّع الشاشات التي تم عرضها داخل تطبيقك. لمزيد من المعلومات، يُرجى الاطّلاع على مقالة تتبُّع مشاهدات الشاشة. |
| session_start | هو حدث Analytics يحتسب جلسات المستخدمين في تطبيقك. لمزيد من المعلومات، يُرجى الاطّلاع على الأحداث المجمّعة تلقائيًا. |
تصدير بيانات BigQuery
بالإضافة إلى عرض بيانات تجارب "A/B Testing" في وحدة تحكّم "Firebase"، يمكنك فحص بيانات التجارب وتحليلها في "BigQuery". على الرغم من أنّ A/B Testing لا يتضمّن جدول BigQuery منفصلاً، يتم تخزين بيانات العضوية في التجارب والصيغ في كل حدث Google Analytics ضمن جداول أحداث Analytics.
تكون خصائص المستخدم التي تحتوي على معلومات التجربة على شكل
userProperty.key like "firebase_exp_%" أو userProperty.key =
"firebase_exp_01" حيث 01 هو رقم تعريف التجربة، وuserProperty.value.string_value يحتوي على فهرس (يبدأ من الصفر) لصيغة التجربة.
يمكنك استخدام خصائص المستخدمين في التجربة هذه لاستخراج بيانات التجربة. يتيح لك ذلك تقسيم نتائج تجربتك بطرق مختلفة والتحقّق من نتائج "A/B Testing" بشكل مستقل.
للبدء، أكمِل الخطوات التالية كما هو موضّح في هذا الدليل:
- تفعيل عملية تصدير بيانات BigQuery إلى Google Analytics في وحدة تحكّم Firebase
- الوصول إلى بيانات "A/B Testing" باستخدام "BigQuery"
- استكشاف أمثلة على طلبات البحث
تفعيل تصدير بيانات "BigQuery" في "Google Analytics" ضمن "وحدة تحكُّم Firebase"
إذا كنت مشتركًا في خطة Spark، يمكنك استخدام وضع الحماية في BigQuery للوصول إلى BigQuery بدون أي تكلفة، وفقًا لحدود وضع الحماية. لمزيد من المعلومات، يُرجى الاطّلاع على التسعير و"BigQuery".
أولاً، تأكَّد من أنّك تصدّر بياناتك من "Analytics" إلى BigQuery:
في وحدة تحكّم Firebase، انتقِل إلى
الإعدادات > علامة التبويب عمليات الدمج.في بطاقة BigQuery، انقر على إدارة وتأكَّد من أنّ مشروعك يصدّر بيانات "Analytics" إلى "BigQuery".
إذا كانت البطاقة تتضمّن الخيار ربط، عليك إعداد عملية التصدير (انتقِل إلى الخطوة التالية).
إذا أردت إعداد عملية التصدير، اتّبِع الخطوات التالية:
راجِع المقالة لمحة عن ربط Firebase بـ "BigQuery"، ثم انقر على التالي.
في قسم ضبط عملية الدمج، فعِّل Google Analytics.
اختَر منطقة واضبط إعدادات التصدير.
انقر على الربط بـ "BigQuery".
اعتمادًا على الطريقة التي اخترتها لتصدير البيانات، قد يستغرق الأمر ما يصل إلى يوم حتى تصبح الجداول متاحة. لمزيد من المعلومات حول تصدير بيانات المشروع إلى BigQuery، يُرجى الاطّلاع على تصدير بيانات المشروع إلى BigQuery.
الوصول إلى بيانات "A/B Testing" في "BigQuery"
قبل طلب بيانات تجربة معيّنة، عليك الحصول على بعض أو كل ما يلي لاستخدامه في طلب البحث:
- رقم تعريف التجربة: يمكنك الحصول عليه من عنوان URL لصفحة نظرة عامة على التجربة. على سبيل المثال، إذا كان عنوان URL يبدو كالتالي:
https://console.firebase.google.com/project/my_firebase_project/config/experiment/results/25، يكون رقم تعريف التجربة هو 25. - رقم تعريف موقع "Google Analytics": هو رقم تعريف موقع "Google Analytics" المكوّن من 9 أرقام. يمكنك العثور على هذا في
Google Analytics؛ يظهر أيضًا في BigQuery عند توسيع
اسم مشروعك لإظهار اسم جدول أحداث
Google Analytics (
project_name.analytics_000000000.events). - تاريخ التجربة: لإنشاء طلب بحث أسرع وأكثر كفاءة، من الأفضل حصر طلبات البحث في أقسام جدول الأحداث اليومية Google Analytics التي تحتوي على بيانات تجربتك، وهي الجداول التي يتم تحديدها باللاحقة
YYYYMMDD. لذا، إذا تم تنفيذ تجربتك من 2 فبراير 2026 إلى 2 مايو 2026، عليك تحديد_TABLE_SUFFIX between '20260202' AND '20260502'. للاطّلاع على مثال، راجِع اختيار قيم تجربة معيّنة. - أسماء الأحداث: تتوافق عادةً مع
مقاييس الأهداف
التي تم ضبطها في التجربة. على سبيل المثال، أحداث
in_app_purchaseأوad_impressionأو أحداثuser_retention.
بعد جمع المعلومات التي تحتاجها لإنشاء طلب البحث:
- في وحدة تحكّم Google Cloud، انتقِل إلى BigQuery.
- اختَر مشروعك، ثم انقر على إنشاء طلب بحث SQL.
- أضِف طلب البحث. للاطّلاع على أمثلة على طلبات البحث التي يمكن تنفيذها، يُرجى مراجعة استكشاف أمثلة على طلبات البحث.
- انقر على تشغيل.
الاستعلام عن بيانات التجربة باستخدام طلب البحث الذي تم إنشاؤه تلقائيًا في وحدة تحكّم Firebase
إذا كنت تستخدم خطة Blaze، توفّر صفحة نظرة عامة على التجربة نموذج طلب بحث يعرض اسم التجربة والصيغ وأسماء الأحداث وعدد الأحداث للتجربة التي تعرضها.
للحصول على طلب البحث الذي تم إنشاؤه تلقائيًا وتنفيذه:
- في وحدة تحكّم Firebase، انتقِل إلى DevOps & Engagement > اختبار A/B.
- اختَر تجربة A/B Testing التي تريد الاستعلام عنها لفتح نظرة عامة على التجربة.
- من قائمة "الخيارات"، ضِمن دمج BigQuery، اختَر طلب بيانات التجربة. يؤدي ذلك إلى فتح مشروعك في BigQuery ضمن وحدة تحكّم Google Cloud ويوفّر طلب بحث أساسيًا يمكنك استخدامه لطلب بيانات تجربتك.
يوضّح المثال التالي طلب بحث تم إنشاؤه لتجربة تتضمّن ثلاث صيغ (بما في ذلك الصيغة الأساسية) باسم "تجربة الترحيب الشتوية". وتعرض هذه الدالة اسم التجربة النشطة واسم الصيغة والحدث الفريد وعدد الأحداث لكل حدث. يُرجى العِلم أنّ أداة إنشاء الطلبات لا تحدّد اسم مشروعك في اسم الجدول، لأنّها تفتح مباشرةً ضمن مشروعك.
/*
This query is auto-generated by Firebase A/B Testing for your
experiment "Winter welcome experiment".
It demonstrates how you can get event counts for all Analytics
events logged by each variant of this experiment's population.
*/
SELECT
'Winter welcome experiment' AS experimentName,
CASE userProperty.value.string_value
WHEN '0' THEN 'Baseline'
WHEN '1' THEN 'Welcome message (1)'
WHEN '2' THEN 'Welcome message (2)'
END AS experimentVariant,
event_name AS eventName,
COUNT(*) AS count
FROM
`analytics_000000000.events_*`,
UNNEST(user_properties) AS userProperty
WHERE
(_TABLE_SUFFIX BETWEEN '20260202' AND '20260502')
AND userProperty.key = 'firebase_exp_25'
GROUP BY
experimentVariant, eventName
للحصول على أمثلة إضافية على طلبات البحث، انتقِل إلى استكشاف أمثلة على طلبات البحث.
استكشاف أمثلة على طلبات البحث
تقدّم الأقسام التالية أمثلة على طلبات البحث التي يمكنك استخدامها لاستخراج بيانات تجارب "A/B Testing" من جداول أحداث "Google Analytics".
استخراج قيم الانحراف المعياري لعمليات الشراء والتجارب من جميع التجارب
يمكنك استخدام بيانات نتائج التجربة للتحقّق بشكل مستقل من نتائج "Firebase A/B Testing". تستخرج عبارة SQL التالية BigQuery صيغ التجارب وعدد المستخدمين الفريدين في كل صيغة وتجمع إجمالي الإيرادات من أحداث in_app_purchase وecommerce_purchase والانحرافات المعيارية لجميع التجارب ضمن النطاق الزمني المحدّد كتاريخَي البدء والانتهاء في _TABLE_SUFFIX. يمكنك استخدام البيانات التي تحصل عليها من هذا الطلب مع
أداة إنشاء دلالة إحصائية لاختبارات t أحادية الطرف للتحقّق من أنّ
النتائج التي يقدّمها Firebase تتطابق مع تحليلك الخاص.
لمزيد من المعلومات حول كيفية احتساب الاستنتاج في A/B Testing، يُرجى الاطّلاع على مقالة تفسير نتائج الاختبارات.
/*
This query returns all experiment variants, number of unique users,
the average USD spent per user, and the standard deviation for all
experiments within the date range specified for _TABLE_SUFFIX.
*/
SELECT
experimentNumber,
experimentVariant,
COUNT(*) AS unique_users,
AVG(usd_value) AS usd_value_per_user,
STDDEV(usd_value) AS std_dev
FROM
(
SELECT
userProperty.key AS experimentNumber,
userProperty.value.string_value AS experimentVariant,
user_pseudo_id,
SUM(
CASE
WHEN event_name IN ('in_app_purchase', 'ecommerce_purchase')
THEN event_value_in_usd
ELSE 0
END) AS usd_value
FROM `PROJECT_NAME.analytics_ANALYTICS_ID.events_*`
CROSS JOIN UNNEST(user_properties) AS userProperty
WHERE
userProperty.key LIKE 'firebase_exp_%'
AND event_name IN ('in_app_purchase', 'ecommerce_purchase')
AND (_TABLE_SUFFIX BETWEEN 'YYYYMMDD' AND 'YYYMMDD')
GROUP BY 1, 2, 3
)
GROUP BY 1, 2
ORDER BY 1, 2;
اختيار قيم تجربة معيّنة
يوضّح مثال طلب البحث التالي كيفية الحصول على بيانات لتجربة معيّنة في BigQuery. يعرض نموذج طلب البحث هذا اسم التجربة وأسماء الصيغ (بما في ذلك "المرجع") وأسماء الأحداث وأعداد الأحداث.
SELECT
'EXPERIMENT_NAME' AS experimentName,
CASE userProperty.value.string_value
WHEN '0' THEN 'Baseline'
WHEN '1' THEN 'VARIANT_1_NAME'
WHEN '2' THEN 'VARIANT_2_NAME'
END AS experimentVariant,
event_name AS eventName,
COUNT(*) AS count
FROM
`analytics_ANALYTICS_PROPERTY.events_*`,
UNNEST(user_properties) AS userProperty
WHERE
(_TABLE_SUFFIX BETWEEN 'YYYMMDD' AND 'YYYMMDD')
AND userProperty.key = 'firebase_exp_EXPERIMENT_NUMBER'
GROUP BY
experimentVariant, eventName