تجربتك الأولى للمراسلة داخل التطبيق

1 المقدمة

الأهداف

في هذا الدرس التطبيقي حول التعليمات البرمجية، ستستخدم تجربة مراسلة داخل التطبيق لتطبيق توصية مطعم متنقل متعدد الأنظمة الأساسية مدعوم من Flutter و Cloud Firestore .

بمجرد الانتهاء، ستتمكن من تصميم وتنفيذ تجارب المراسلة داخل التطبيق لزيادة مشاركة المستخدم بشكل فعال لأي تطبيق iOS أو Android أثناء كتابة الحد الأدنى من التعليمات البرمجية.

b284c40acc99b994.png

ما ستتعلمه

  • كيفية استخدام Firebase In-App Messaging (FIAM) في تطبيق Flutter
  • كيفية تخصيص مظهر رسائلك داخل التطبيق
  • كيفية تصميم تجربة مراسلة داخل التطبيق وتنفيذها في تطبيقك
  • كيفية تفسير نتائج تجربة المراسلة داخل التطبيق

ما الذي تريد أن تتعلمه من هذا الدرس التطبيقي حول البرمجة؟

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

المراسلة داخل التطبيق من Firebase

تساعدك خدمة Firebase In-App Messaging (FIAM) على جذب المستخدمين الذين يستخدمون تطبيقك بشكل نشط عن طريق إرسال رسائل مستهدفة وسياقية تدفعهم إلى إكمال الإجراءات الرئيسية داخل التطبيق - مثل تجاوز مستوى اللعبة، أو شراء عنصر، أو الاشتراك في المحتوى .

اختبار Firebase A/B

يساعدك اختبار Firebase A/B (ABT)، المدعوم من Google Optimize، على تحسين تجربة تطبيقك من خلال تسهيل تشغيل تجارب المنتجات والتسويق وتحليلها وتوسيع نطاقها. فهو يمنحك القدرة على اختبار التغييرات التي تطرأ على واجهة المستخدم أو الميزات أو حملات المشاركة لتطبيقك لمعرفة ما إذا كانت تؤثر بالفعل على مقاييسك الرئيسية (مثل الإيرادات والاحتفاظ) قبل طرحها على نطاق واسع.

ماذا تحتاج

إذا لم تكن على دراية بـ Flutter أو Firestore، فأكمل أولاً الدرس التطبيقي حول التعليمات البرمجية لـ Firebase for Flutter :

يمكنك تشغيل هذا الدرس التطبيقي حول التعليمات البرمجية باستخدام أي من الأجهزة التالية:

  • جهاز فعلي (Android أو iOS) متصل بجهاز الكمبيوتر الخاص بك ويتم ضبطه على وضع المطور.
  • محاكي iOS. (يتطلب تثبيت أدوات Xcode ).
  • محاكي الاندرويد. (يتطلب الإعداد في Android Studio ).

بالإضافة إلى ما سبق، سوف تحتاج أيضا:

  • متصفح من اختيارك، مثل Chrome.
  • محرر IDE أو محرر نصوص من اختيارك، مثل Android Studio أو VS Code تم تكوينه باستخدام المكونات الإضافية Dart وFlutter. يوصى باستخدام VS Code مع Flutter.
  • أحدث إصدار ثابت من Flutter (أو الإصدار التجريبي إذا كنت تستمتع بالعيش على الحافة).
  • حساب Google، مثل حساب Gmail، لإنشاء مشروع Firebase وإدارته.
  • نموذج التعليمات البرمجية الخاص ببرنامج Codelab. راجع الخطوة التالية لمعرفة كيفية الحصول على الرمز.

2. الإعداد

احصل على الرمز

انسخ مستودع GitHub من سطر الأوامر:

git clone https://github.com/FirebaseExtended/codelab-friendlyeats-flutter.git friendlyeats-flutter

سيتم استنساخ نموذج التعليمات البرمجية في دليل friendlyeats-flutter . من الآن فصاعدا، تأكد من تشغيل الأوامر من هذا الدليل:

cd friendlyeats-flutter

ثم قم بالتغيير إلى دليل Codelab وتحقق من فرع fiam-abt :

git checkout fiam-abt

يحتوي هذا الفرع على كافة التعليمات البرمجية اللازمة لهذا الدرس التطبيقي للبرمجة، بما في ذلك النسخة المكتملة في مجلد done ". تحتوي الفروع الأخرى في هذا المستودع على تعليمات برمجية لإنشاء تطبيق FriendlyEats، كما هو موضح في برنامج التدريب البرمجي الخاص بـ Firestore Flutter متعدد الأنظمة الأساسية . لأغراض هذا الدرس التطبيقي حول التعليمات البرمجية، قمنا بإزالة تكامل الويب في هذا الفرع.

قم باستيراد تطبيق البداية

افتح أو قم باستيراد دليل codelab-fiam-abt إلى IDE المفضل لديك. يحتوي هذا الدليل على رمز البداية لبرنامج Codelab الذي يتكون من تطبيق توصيات المطاعم. من خلال هذا الدرس التطبيقي حول التعليمات البرمجية، ستتمكن من إجراء تجربة مراسلة داخل التطبيق لمستخدمي هذا التطبيق.

إنشاء مشروع Firebase

  1. في وحدة تحكم Firebase ، انقر فوق إضافة مشروع ، ثم قم بتسمية مشروع Firebase FriendlyEats . تذكر معرف المشروع لمشروع Firebase الخاص بك (أو انقر فوق أيقونة التحرير لتعيين معرف المشروع المفضل لديك).
  2. تأكد من تمكين Google Analytics للمشروع، ثم انقر فوق "متابعة".
  3. انقر فوق إنشاء مشروع .

تهانينا! لقد أنشأت للتو مشروعك الأول على Firebase. الآن، يمكنك النقر على اسم المشروع للدخول إلى وحدة التحكم.

بعد ذلك، ستنتقل إلى تكوين الخدمات الضرورية وتمكينها باستخدام وحدة تحكم Firebase.

تمكين المصادقة المجهولة

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

لتمكين تسجيل الدخول المجهول:

  1. في وحدة تحكم Firebase، حدد موقع المصادقة في شريط التنقل الأيسر.
  2. انقر فوق المصادقة ، ثم انقر فوق البدء وحدد علامة التبويب طريقة تسجيل الدخول (أو انتقل مباشرة إلى وحدة تحكم Firebase ).
  3. قم بتمكين موفر تسجيل الدخول المجهول ، ثم انقر فوق حفظ .

fee6c3ebdf904459.png

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

تمكين سحابة Firestore

يستخدم التطبيق Cloud Firestore لحفظ واستقبال معلومات وتقييمات المطعم.

لتمكين Cloud Firestore:

  1. في شريط التنقل الأيسر لوحدة تحكم Firebase، انقر فوق Firestore .
  2. انقر فوق إنشاء قاعدة بيانات في جزء Cloud Firestore.

57e83568e05c7710.png

  1. حدد خيار البدء في وضع الاختبار ، ثم انقر فوق " التالي " بعد قراءة إخلاء المسؤولية حول قواعد الأمان، ثم " تمكين ".

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

daef1061fc25acc7.png

3. تكوين Firebase الخاص بالهاتف المحمول

معظم تغييرات التعليمات البرمجية المطلوبة لتمكين دعم Firebase تم التحقق منها بالفعل في المشروع الذي تعمل عليه. ومع ذلك، لإضافة دعم لمنصات الأجهزة المحمولة، تحتاج إلى:

  • قم بتسجيل النظام الأساسي المطلوب في مشروع Firebase
  • قم بتنزيل ملف التكوين الخاص بالمنصة، وأضفه إلى الكود.

في دليل المستوى الأعلى لتطبيق Flutter، توجد أدلة فرعية تسمى ios و android . تحتوي هذه الدلائل على ملفات التكوين الخاصة بالنظام الأساسي لنظامي التشغيل iOS وAndroid، على التوالي.

a35458e5c0dd0acf.png تكوين دائرة الرقابة الداخلية

في وحدة تحكم Firebase ، حدد إعدادات المشروع في الجزء العلوي من شريط التنقل الأيسر، وانقر على زر iOS ضمن تطبيقاتك في الصفحة العامة .

يجب أن تشاهد مربع الحوار التالي:

c42139f18fb9a2ee.png

  1. القيمة المهمة التي يجب توفيرها هي معرف حزمة iOS. يمكنك الحصول على معرف الحزمة عن طريق تنفيذ الخطوات الثلاث التالية.
  1. في أداة سطر الأوامر، انتقل إلى دليل المستوى الأعلى لتطبيق Flutter.
  2. قم بتشغيل الأمر open ios/Runner.xcworkspace لفتح Xcode.
  1. في Xcode، انقر فوق Runner ذو المستوى الأعلى في الجزء الأيسر، لإظهار علامة التبويب عام في الجزء الأيسر، كما هو موضح. انسخ قيمة معرف الحزمة .

9733e26be329f329.png

  1. ارجع إلى مربع حوار Firebase، والصق معرف الحزمة المنسوخ في حقل معرف حزمة iOS ، وانقر فوق تسجيل التطبيق .
  1. للاستمرار في Firebase، اتبع الإرشادات لتنزيل ملف التكوين GoogleService-Info.plist .
  2. ارجع إلى إكس كود. لاحظ أن Runner لديه مجلد فرعي يسمى أيضًا Runner (كما هو موضح في الصورة السابقة).
  3. اسحب ملف GoogleService-Info.plist (الذي قمت بتنزيله للتو) إلى المجلد الفرعي Runner .
  4. في مربع الحوار الذي يظهر في Xcode، انقر فوق "إنهاء" .
  5. ارجع إلى وحدة تحكم Firebase. في خطوة الإعداد، انقر فوق "التالي" ، وتخطى الخطوات المتبقية، ثم عد إلى الصفحة الرئيسية لوحدة تحكم Firebase.

لقد انتهيت من تكوين تطبيق Flutter لنظام التشغيل iOS!

84e0b3199bef6d8a.png تكوين أندرويد

  1. في وحدة تحكم Firebase ، حدد إعدادات المشروع في الجزء العلوي من شريط التنقل الأيسر، وانقر على زر Android ضمن تطبيقاتك في الصفحة العامة .

يجب أن تشاهد مربع الحوار التالي: 8254fc299e82f528.png

  1. القيمة المهمة التي يجب توفيرها هي اسم حزمة Android . يمكنك الحصول على اسم الحزمة عند تنفيذ الخطوتين التاليتين:
  1. في دليل تطبيق Flutter، افتح الملف android/app/src/main/AndroidManifest.xml .
  2. في عنصر manifest ، ابحث عن قيمة السلسلة لسمة package . هذه القيمة هي اسم حزمة Android (شيء مثل com.yourcompany.yourproject ). انسخ هذه القيمة.
  3. في مربع حوار Firebase، الصق اسم الحزمة المنسوخة في حقل اسم حزمة Android .
  4. لا تحتاج إلى شهادة توقيع التصحيح SHA-1 لهذا الدرس التطبيقي حول التعليمات البرمجية. اترك هذا فارغا.
  5. انقر فوق تسجيل التطبيق .
  6. للاستمرار في Firebase، اتبع الإرشادات لتنزيل ملف التكوين google-services.json .
  7. انتقل إلى دليل تطبيق Flutter، وانقل ملف google-services.json (الذي قمت بتنزيله للتو) إلى دليل android/app .
  8. ارجع إلى وحدة تحكم Firebase، وتخط الخطوات المتبقية، ثم ارجع إلى الصفحة الرئيسية لوحدة تحكم Firebase.
  9. تم بالفعل التحقق من جميع تكوينات Gradle. إذا كان تطبيقك لا يزال قيد التشغيل، فقم بإغلاقه وإعادة بنائه للسماح لـ Gradle بتثبيت التبعيات.

لقد انتهيت من تكوين تطبيق Flutter لنظام Android!

4. قم بتشغيل تطبيقك محليًا

أنت جاهز لبدء العمل فعليًا على تطبيقك! أولاً، قم بتشغيل التطبيق محلياً. يمكنك الآن تشغيل التطبيق على أي نظام أساسي قمت بتكوينه (والذي يتوفر لديك جهاز ومحاكي له).

اكتشف الأجهزة المتوفرة باستخدام الأمر التالي:

flutter devices

اعتمادًا على الأجهزة المتوفرة، تبدو نتيجة الأمر السابق كما يلي:

7d44d7c0837b3e8e.png

الآن، قم بتشغيل التطبيق محليًا باستخدام الأمر التالي:

flutter run

الآن، من المفترض أن تشاهد نسختك من FriendlyEats، متصلة بمشروع Firebase الخاص بك.

يتصل التطبيق تلقائيًا بمشروع Firebase الخاص بك ويقوم بتسجيل دخولك بصمت كمستخدم مجهول.

5. قم بإنشاء واختبار رسالتك الأولى

دمج Firebase In-App Messaging في تطبيقك

يعد التكامل الأساسي للمراسلة داخل التطبيق بدون تعليمات برمجية تمامًا، كل ما عليك فعله هو إضافة التبعية وستكون جاهزًا للبدء! أضف التبعية التالية إلى ملف pubspec.yaml الخاص بك

dependencies:
  # ...
  firebase_in_app_messaging: ^0.4.0
  # ...

أنشئ رسالة في Firebase Console

الآن بعد أن قمت بإضافة FIAM إلى تطبيقك، دعنا ننشئ رسالة يتم تشغيلها عند فتح تطبيقك لأول مرة.

لكتابة رسالتك الأولى:

  1. في قسم المشاركة بوحدة تحكم Firebase، انقر فوق المراسلة داخل التطبيق .
  2. انقر فوق إنشاء حملتك الأولى في جزء المراسلة داخل التطبيق.

4fec02395f89f2a8.png

لنقم بإنشاء رسالة مشروطة أساسية للتأكد من أن التكامل يعمل. لا تتردد في تخصيص الرسالة بأي طريقة تريدها - يمكنك إضافة صور أو أزرار أو تغيير الألوان.

59845004afc26847.png

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

3f1eb7a327a50265.png

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

8dc5cea0a4c79008.png

بمجرد الانتهاء من الجدولة يمكننا نشر الرسالة. انقر فوق "مراجعة" وسترى شيئًا مثل ما يلي

5bbc987bf63d1f48.png

عرض الرسالة في التطبيق الخاص بك

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

6. دمج Firebase Analytics لتشغيل الرسائل المتقدمة

دمج Firebase Analytics في تطبيقك

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

  1. أضف تبعية Firebase Analytics إلى Flutter في pubspec.yaml
dependencies:
  # ...
  firebase_analytics: ^1.0.1
  # ...
  1. استيراد التحليلات في home_page.dart
import 'package:firebase_analytics/firebase_analytics.dart';
  1. أضف مثيل Firebase Analytics إلى فئة HomePage في home_page.dart
class HomePage extends StatefulWidget {
  static const route = '/';
  static FirebaseAnalytics analytics = FirebaseAnalytics();
  HomePage({Key key}) : super(key: key);
  @override
  _HomePageState createState() => _HomePageState();
}
  1. أطلق حدث تحليلات عندما ينقر المستخدم على بطاقة مطعم في home_page.dart
onRestaurantPressed: (id) async {
  await HomePage.analytics.logEvent(name: 'click_restaurant');
  Navigator.pushNamed(context,
                      RestaurantPage.route,
                      arguments: RestaurantPageArguments(id: id));
})

قم بتحرير رسالتك لتشغيلها في حدث التحليلات

الآن بعد أن أصبح لدينا حدث "click_restaurant"، فلنقم بتشغيل رسالتنا داخل التطبيق بناءً على ذلك بدلاً من تشغيل المستخدم عندما يفتح التطبيق.

في Firebase Console، ارجع إلى الرسالة داخل التطبيق وقم بتعديل حملتك الحالية

d1fdc539dfcc6375.png

الآن قم بتغيير قسم الجدولة لتشغيل الرسالة من الحدث الجديد

8e12d8f1f8f166dd.png

ومن هناك يمكننا نشر تغييراتنا من خلال النقر على زر "مراجعة".

4f7d6bd2960b3ef7.png

اختبر المشغل الخاص بك في التطبيق

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

flutter run

وعندما تنقر على أحد المطاعم، يجب أن ترى الرسالة داخل التطبيق

a11febda5526263.png

7. قم بإنشاء حملة FIAM+ABT

ابدأ بهدف

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

دعونا أولاً نحدد حدث التحويل الخاص بنا

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

  1. قم باستيراد Firebase Analytics تمامًا كما كان من قبل وأضف مثيل Analytics إلى RestaurantPage في restaurant_page.dart
class RestaurantPage extends StatefulWidget {
  static const route = '/restaurant';
  static FirebaseAnalytics analytics = FirebaseAnalytics();
  final String _restaurantId;
  RestaurantPage({Key key, @required String restaurantId})
      : _restaurantId = restaurantId,
        super(key: key);
  @override
  _RestaurantPageState createState() =>
      _RestaurantPageState(restaurantId: _restaurantId);
}
  1. الآن لنبدأ بتشغيل حدث في _onCreateReviewPressed عندما نحفظ تعليقًا في restaurant_page.dart
 if (newReview != null) {
   // Log successful review
   await RestaurantPage.analytics.logEvent(name: 'review_success');
   // Save the review
   return data.addReview(restaurantId: _restaurant.id, review: newReview);
 }

قم بتكوين اختبار A/B في وحدة تحكم Firebase

الآن بعد أن عرفنا كيفية إنشاء حملات مراسلة داخل التطبيق، فقد حان الوقت للتفكير في نوع السلوك الذي نود تشجيعه في تطبيقنا من خلال هذه الحملات. بالنسبة لـ FriendlyEats، نود أن يترك المزيد من الأشخاص تعليقاتهم، مما يجعل التطبيق أكثر فائدة! هناك عدة طرق يمكننا من خلالها تشجيع ذلك باستخدام الرسائل داخل التطبيق. أحدهما من خلال رسالة بسيطة داخل التطبيق تخبر المستخدم بأنه يجب عليه إعطاء المطعم مراجعة للمساعدة في تحسين تطبيق FriendlyEats. هناك طريقة أخرى وهي استخدام رسالة داخل التطبيق لتقديم نوع من الحوافز لتقديم المراجعة، مثل قسيمة أو رمز خصم لمطعم معين.

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

لإنشاء أول تجربة مراسلة داخل التطبيق:

  1. في قسم المشاركة بوحدة تحكم Firebase، انقر فوق اختبار A/B .
  2. انقر فوق إنشاء تجربة ، وحدد ما تريد تجربته مع المراسلة داخل التطبيق . سينقلك هذا إلى مؤلف التجربة الموضح أدناه.

a792dfd4f82fee9c.png

قم بتسمية تجربتك ووصفًا اختياريًا.

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

50e3eb946c56501a.png

  1. الآن بعد أن أصبح لدينا خط أساسي، سنقوم الآن بإنشاء متغير، وهو رسالة داخل التطبيق تقدم للمستخدمين رمز قسيمة لتشجيعهم على ترك مراجعة. لا يظهر هذا بشكل كامل في المعاينة أدناه، ولكن عنوان الرسالة هو "خذ قسيمة، واترك تعليقًا!"، ونص الرسالة هو "في المرة القادمة التي تكون فيها في Burrito Cafe، استخدم رمز القسيمة FRIENDLYEATS-15 في قم بالدفع للحصول على خصم 15% على طلبك. وتذكر أن تترك تعليقًا بعد ذلك!". نأمل أن يلهم هذا بعض المستخدمين لزيارة مقهى بوريتو!

السرير9182080bebb41.png

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

bd96bf5798d227f1.png

  1. بعد ذلك، سوف تحدد بعض الأهداف للتجربة. هذه هي نتيجة التجربة التي نود قياسها. سنقوم بتعيين هذا كحدث تحليلات review_success الذي حددناه في القسم السابق، حيث نود أن نرى تأثير رسائلنا المختلفة داخل التطبيق على المستخدمين الذين يتركون تعليقاتهم على المطاعم. eb89d3b9f89ab43b.png
  2. بالنسبة للجدولة، سنسمح للحملة بالبدء على الفور، ونقوم بتعيين click_restaurant كشرط التشغيل، بحيث يرى المستخدمون إحدى الرسالتين داخل التطبيق عندما ينقرون على مطعم.

c57be430d41bfcad.png

  1. الآن، كل ما تبقى هو مراجعة تجربتنا، ثم الضغط على بدء التجربة . ثم يمكننا الجلوس وانتظار ظهور البيانات من تجربتنا!

566af8bace30c67.png

تحقق من جمع البيانات في الوقت الحقيقي

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

8fa8a0edcd8a8ad4.png

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

8. تهانينا

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

ماذا بعد؟

تحقق من بعض هذه الدروس البرمجية...

قراءة متعمقة

لقد قمنا للتو بدراسة سطح ما يمكن فعله باستخدام Firebase In-App Messaging واختبار Firebase A/B. تحقق من هذه إذا كنت ترغب في معرفة المزيد ...

المستندات المرجعية