获取我们在 Firebase 峰会上发布的所有信息,了解 Firebase 可如何帮助您加快应用开发速度并满怀信心地运行应用。了解详情

إنشاء تجارب مراسلة داخل التطبيق باستخدام اختبار A / B

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

لاختبار A / B متغيرات الميزات بخط أساسي ، قم بما يلي:

  1. قم بإنشاء تجربتك.
  2. تحقق من صحة تجربتك على جهاز اختبار.
  3. إدارة تجربتك.

قم بإنشاء تجربة

تتيح لك التجربة التي تستخدم Firebase In-App Messaging تقييم متغيرات متعددة لرسالة واحدة داخل التطبيق.

  1. سجّل الدخول إلى وحدة تحكم Firebase وتحقق من تمكين Google Analytics في مشروعك بحيث تتمتع التجربة بإمكانية الوصول إلى بيانات Analytics.

    إذا لم تقم بتمكين Google Analytics عند إنشاء مشروعك ، فيمكنك تمكينه في علامة التبويب التكامل ، والتي يمكنك الوصول إليها باستخدام > إعدادات المشروع في وحدة تحكم Firebase .

  2. في قسم Engage بشريط تنقل وحدة تحكم Firebase ، انقر على اختبار A / B.

  3. انقر فوق إنشاء تجربة ، ثم حدد المراسلة داخل التطبيق عند مطالبتك بالخدمة التي تريد تجربتها.

  4. بدلاً من ذلك ، في شريط التنقل بوحدة تحكم Firebase ، قم بتوسيع Engage ، ثم انقر فوق In-App Messaging . ثم انقر فوق تجربة جديدة .

  5. أدخل اسمًا ووصفًا اختياريًا لتجربتك ، وانقر فوق التالي .

  6. املأ حقول الاستهداف ، واختر أولاً التطبيق الذي يستخدم تجربتك. يمكنك أيضًا استهداف مجموعة فرعية من المستخدمين للمشاركة في تجربتك باختيار الخيارات التي تتضمن ما يلي:

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

  8. في قسم المتغيرات ، قم بتكوين رسالة أساسية داخل التطبيق لإرسالها إلى المجموعة الأساسية باستخدام واجهة تصميم الرسالة التي تستخدمها لحملة رسائل عادية داخل التطبيق.

  9. لإضافة متغير إلى تجربتك ، انقر فوق إضافة متغير . بشكل افتراضي ، تحتوي التجارب على أساس واحد ومتغير واحد.

  10. (اختياري) أدخل اسمًا لكل متغير في تجربتك لاستبدال الأسماء Variant A و Variant B وما إلى ذلك.

  11. (اختياري) في الجزء العلوي من قسم المتغيرات ، انقر فوق الزر مقارنة المتغيرات لمقارنة متغيرات رسالة أخرى جنبًا إلى جنب مع رسالة الخط الأساسي.

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

  13. تكوين الجدولة للتجربة:

    • حدد تاريخ البدء والانتهاء للتجربة .
    • تعيين كيفية تشغيل الرسائل داخل التطبيق عبر جميع المتغيرات.
  14. انقر فوق مراجعة لحفظ تجربتك.

يُسمح لك بما يصل إلى 300 تجربة لكل مشروع ، والتي يمكن أن تتكون من ما يصل إلى 24 تجربة قيد التشغيل ، والباقي كمسودة أو مكتملة.

تحقق من صحة تجربتك على جهاز اختبار

لكل تثبيت Firebase ، يمكنك استرداد رمز مصادقة التثبيت المرتبط به. يمكنك استخدام هذا الرمز المميز لاختبار متغيرات تجربة معينة على جهاز اختبار مع تثبيت تطبيقك. للتحقق من صحة تجربتك على جهاز اختبار ، قم بما يلي:

  1. احصل على رمز مصادقة التثبيت كما يلي:

    سويفت

    Installations.installations().authTokenForcingRefresh(true, completion: { (result, error) in
      if let error = error {
        print("Error fetching token: \(error)")
        return
      }
      guard let result = result else { return }
      print("Installation auth token: \(result.authToken)")
    })
    

    ج موضوعية

    [[FIRInstallations installations] authTokenForcingRefresh:true
                                                   completion:^(FIRInstallationsAuthTokenResult *result, NSError *error) {
      if (error != nil) {
        NSLog(@"Error fetching Installation token %@", error);
        return;
      }
      NSLog(@"Installation auth token: %@", [result authToken]);
    }];
    

    Java

    FirebaseInstallations.getInstance().getToken(/* forceRefresh */true)
            .addOnCompleteListener(new OnCompleteListener<InstallationTokenResult>() {
        @Override
        public void onComplete(@NonNull Task<InstallationTokenResult> task) {
            if (task.isSuccessful() && task.getResult() != null) {
                Log.d("Installations", "Installation auth token: " + task.getResult().getToken());
            } else {
                Log.e("Installations", "Unable to get Installation auth token");
            }
        }
    });

    Kotlin+KTX

    FirebaseInstallations.getInstance().getToken(/* forceRefresh */ true)
        .addOnCompleteListener { task ->
            if (task.isSuccessful) {
                Log.d("Installations", "Installation auth token: " + task.result?.token)
            } else {
                Log.e("Installations", "Unable to get Installation auth token")
            }
        }
  2. في شريط التنقل لوحدة تحكم Firebase ، انقر على اختبار أ / ب .
  3. انقر فوق مسودة (و / أو تشغيل لتجارب التكوين عن بُعد) ، وقم بالمرور فوق تجربتك ، وانقر فوق قائمة السياق ( ) ، ثم انقر فوق إدارة أجهزة الاختبار .
  4. أدخل رمز مصادقة التثبيت لجهاز اختبار واختر متغير التجربة لإرساله إلى جهاز الاختبار هذا.
  5. قم بتشغيل التطبيق وتأكد من استلام المتغير المحدد على جهاز الاختبار.

لمعرفة المزيد حول عمليات تثبيت Firebase ، راجع إدارة عمليات تثبيت Firebase .

إدارة تجربتك

سواء قمت بإنشاء تجربة باستخدام Remote Config ، أو مؤلف الإشعارات ، أو Firebase In-App Messaging ، يمكنك بعد ذلك التحقق من صحة تجربتك وبدءها ، ومراقبة تجربتك أثناء تشغيلها ، وزيادة عدد المستخدمين المضمنين في تجربتك الجارية.

عند الانتهاء من تجربتك ، يمكنك تدوين الإعدادات التي يستخدمها المتغير الفائز ، ثم نشر هذه الإعدادات على جميع المستخدمين. أو يمكنك إجراء تجربة أخرى.

ابدأ تجربة

  1. في قسم Engage بشريط تنقل وحدة تحكم Firebase ، انقر على اختبار A / B.
  2. انقر فوق مسودة ، ثم انقر فوق عنوان تجربتك.
  3. للتحقق من وجود مستخدمين لتطبيقك سيتم تضمينهم في تجربتك ، وسّع تفاصيل المسودة وتحقق من وجود عدد أكبر من في قسم الاستهداف والتوزيع (على سبيل المثال ، 1٪ من المستخدمين يطابقون المعايير ).
  4. لتغيير تجربتك ، انقر فوق تحرير .
  5. لبدء تجربتك ، انقر فوق بدء التجربة . يمكنك تشغيل ما يصل إلى 24 تجربة لكل مشروع في المرة الواحدة.

مراقبة تجربة

بمجرد تشغيل التجربة لفترة من الوقت ، يمكنك التحقق من تقدمها ومعرفة كيف تبدو نتائجك للمستخدمين الذين شاركوا في تجربتك حتى الآن.

  1. في قسم Engage بشريط تنقل وحدة تحكم Firebase ، انقر على اختبار A / B.
  2. انقر فوق تشغيل ، ثم انقر فوق عنوان تجربتك أو ابحث عنه. في هذه الصفحة ، يمكنك عرض العديد من الإحصائيات الملحوظة والمنمذجة حول تجربتك قيد التشغيل ، بما في ذلك ما يلي:

    • الفرق٪ من خط الأساس : مقياس لتحسين مقياس لمتغير معين مقارنة بخط الأساس. محسوبة بمقارنة نطاق القيمة للمتغير بنطاق القيمة لخط الأساس.
    • احتمال تجاوز خط الأساس : الاحتمالية المقدرة بأن متغيرًا معينًا يتفوق على خط الأساس للمقياس المحدد.
    • observed_metric لكل مستخدم : بناءً على نتائج التجربة ، هذا هو النطاق المتوقع الذي ستقع فيه قيمة المقياس بمرور الوقت.
    • إجمالي observed_metric : القيمة التراكمية الملحوظة لخط الأساس أو المتغير. تُستخدم القيمة لقياس مدى جودة أداء كل متغير تجربة ، وتُستخدم لحساب التحسين ونطاق القيمة واحتمالية تجاوز خط الأساس والاحتمال ليكون الخيار الأفضل . اعتمادًا على المقياس الذي يتم قياسه ، يمكن تسمية هذا العمود باسم "المدة لكل مستخدم" ، أو "العائد لكل مستخدم" ، أو "معدل الاحتفاظ" ، أو "معدل التحويل".
  3. بعد تشغيل تجربتك لفترة (7 أيام على الأقل لـ FCM والمراسلة داخل التطبيق أو 14 يومًا للتكوين عن بُعد) ، تشير البيانات الموجودة في هذه الصفحة إلى أي متغير ، إن وجد ، هو "الرائد". بعض القياسات مصحوبة بمخطط شريطي يعرض البيانات بتنسيق مرئي.

طرح تجربة لجميع المستخدمين

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

  1. في قسم Engage بشريط تنقل وحدة تحكم Firebase ، انقر على اختبار A / B.
  2. انقر فوق مكتمل أو قيد التشغيل ، وانقر فوق التجربة التي تريد نشرها لجميع المستخدمين ، وانقر فوق قائمة السياق ( ) ، ثم انقر فوق طرح المتغير .
  3. اطرح تجربتك لجميع المستخدمين عن طريق القيام بأحد الإجراءات التالية:

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

قم بتوسيع التجربة

إذا وجدت أن التجربة لا تجذب عددًا كافيًا من المستخدمين لاختبار أ / ب لإعلان قائد ، يمكنك زيادة توزيع تجربتك للوصول إلى نسبة مئوية أكبر من قاعدة مستخدمي التطبيق.

  1. في قسم Engage بشريط تنقل وحدة تحكم Firebase ، انقر على اختبار A / B.
  2. حدد التجربة الجارية التي تريد تعديلها.
  3. في نظرة عامة على التجربة ، انقر فوق قائمة السياق ( ) ، ثم انقر فوق تحرير تجربة قيد التشغيل .
  4. يعرض مربع الحوار " الاستهداف " خيارًا لزيادة النسبة المئوية للمستخدمين في التجربة قيد التشغيل حاليًا. حدد رقمًا أكبر من النسبة المئوية الحالية وانقر فوق نشر . سيتم دفع التجربة إلى النسبة المئوية التي حددتها للمستخدمين.

تكرار التجربة أو إيقافها

  1. في قسم Engage بشريط تنقل وحدة تحكم Firebase ، انقر على اختبار A / B.
  2. انقر فوق مكتمل أو قيد التشغيل ، وقم بتمرير الماوس فوق تجربتك ، وانقر فوق قائمة السياق ( ) ، ثم انقر فوق تكرار التجربة أو إيقاف التجربة .

استهداف المستخدم

يمكنك استهداف المستخدمين لتضمينهم في تجربتك باستخدام معايير استهداف المستخدم التالية.

معيار الاستهداف العاملين) قيم) ملحوظة
إصدار يحتوي على،
لا يحتوي،
يطابق تمامًا ،
يحتوي على regex
أدخل قيمة لواحد أو أكثر من إصدارات التطبيق التي تريد تضمينها في التجربة.

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

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

جمهور (جماهير) المستخدم يشمل كل ،
يتضمن واحدًا على الأقل من ،
لا يشمل كل ،
لا يتضمن واحدًا على الأقل من
حدد شريحة جمهور Analytics واحدة أو أكثر لاستهداف المستخدمين الذين قد يتم تضمينهم في تجربتك. قد تتطلب بعض التجارب التي تستهدف جماهير Google Analytics بضعة أيام لتجميع البيانات لأنها تخضع لوقت استجابة معالجة البيانات في Analytics. من المرجح أن تواجه هذا التأخير مع المستخدمين الجدد ، الذين تم تسجيلهم عادةً في الجماهير المؤهلة بعد 24-48 ساعة من الإنشاء ، أو للجماهير التي تم إنشاؤها مؤخرًا .
خاصية المستخدم للنص:
يحتوي على،
لا يحتوي،
تطابق تمامًا ،
يحتوي على regex

للأرقام:
<، ≤ ، = ، ≥ ،>
يتم استخدام خاصية مستخدم Analytics لتحديد المستخدمين الذين قد يتم تضمينهم في تجربة ، مع مجموعة من الخيارات لتحديد قيم خصائص المستخدم.

على العميل ، يمكنك تعيين قيم سلسلة فقط لخصائص المستخدم. بالنسبة للحالات التي تستخدم عوامل التشغيل الرقمية ، تقوم خدمة Remote Config بتحويل قيمة خاصية المستخدم المقابلة إلى عدد صحيح / عدد عشري.
عند استخدام عامل التشغيل يحتوي على regex ، يمكنك إنشاء تعبيرات عادية بتنسيق RE2 . يمكن أن يتطابق التعبير العادي مع كل سلسلة الإصدار الهدف أو جزء منها. يمكنك أيضًا استخدام علامة الارتساء ^ و $ لمطابقة بداية السلسلة المستهدفة أو نهايتها أو كليها.
البلد / المنطقة غير متاح تُستخدم دولة أو منطقة واحدة أو أكثر لتحديد المستخدمين الذين قد يتم تضمينهم في التجربة.
اللغات غير متاح تُستخدم لغة ولغات محلية أو أكثر لتحديد المستخدمين الذين قد يتم تضمينهم في التجربة.
أول فتح أكثر من
أقل من
بين
استهدف المستخدمين بناءً على المرة الأولى التي فتحوا فيها تطبيقك ، والمحددة بالأيام. معيار الاستهداف هذا متاح فقط لمراسلة Firebase داخل التطبيق.
آخر مشاركة للتطبيق أكثر من
أقل من
بين
استهدف المستخدمين بناءً على آخر مرة تفاعلوا فيها مع تطبيقك ، والمحددة بالأيام. معيار الاستهداف هذا متاح فقط لمراسلة Firebase داخل التطبيق.

مقاييس اختبار A / B

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

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

  • إجمالي الإيرادات المقدرة لمعرفة كيف يختلف كل من الشراء داخل التطبيق وعائد الإعلانات بين المتغيرين
  • الاحتفاظ (يوم واحد) ، الاحتفاظ (2-3 أيام) ، الاحتفاظ (4-7 أيام) لتتبع الاحتفاظ بالمستخدمين يوميًا / أسبوعيًا

توفر الجداول التالية تفاصيل حول كيفية حساب مقاييس الهدف والمقاييس الأخرى.

مقاييس الهدف

قياس وصف
المستخدمون الذين لا يعانون من الأعطال النسبة المئوية للمستخدمين الذين لم يواجهوا أخطاء في تطبيقك تم اكتشافها بواسطة Firebase Crashlytics SDK أثناء التجربة.
عائدات الإعلانات المقدرة أرباح الإعلانات المقدرة.
إجمالي الإيرادات المقدرة القيمة المجمعة للشراء وعائدات الإعلانات المقدرة.
عائدات الشراء القيمة المجمعة لجميع أحداث purchase و in_app_purchase .
الاحتفاظ (يوم واحد) عدد المستخدمين الذين يعودون إلى تطبيقك بشكل يومي.
الاحتفاظ (2-3 أيام) عدد المستخدمين الذين عادوا إلى تطبيقك في غضون 2-3 أيام.
الاحتفاظ (4-7 أيام) عدد المستخدمين الذين عادوا إلى تطبيقك في غضون 4-7 أيام.
الاحتفاظ (8-14 يومًا) عدد المستخدمين الذين عادوا إلى تطبيقك في غضون 8-14 يومًا.
الاحتفاظ (15+ يومًا) عدد المستخدمين الذين عادوا إلى تطبيقك بعد 15 يومًا أو أكثر من استخدامه لآخر مرة.
first_open حدث Analytics يتم تشغيله عندما يفتح المستخدم تطبيقًا لأول مرة بعد تثبيته أو إعادة تثبيته. تُستخدم كجزء من مسار التحويل.

مقاييس أخرى

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