توفّر خدمة "الرسائل داخل التطبيق" من Firebase مجموعة مفيدة من السلوكيات وأنواع الرسائل المُعدّة مسبقًا مع مظهر وإحساس تلقائيين، ولكن في بعض الحالات، قد تحتاج إلى توسيع السلوكيات ومحتوى الرسائل. تتيح لك ميزة "الرسائل داخل التطبيق" إضافة إجراءات إلى الرسائل وتخصيص شكل الرسائل وأسلوبها.
إضافة إجراء إلى رسالتك
باستخدام الإجراءات، يمكنك استخدام الرسائل داخل التطبيق لتوجيه المستخدمين إلى موقع إلكتروني أو شاشة معيّنة في تطبيقك.
تنفيذ معالج الروابط لصفحات في التطبيق
يستخدم Firebase In-App Messaging معالِجات الروابط لمعالجة الإجراءات. يمكن لحزمة تطوير البرامج (SDK) استخدام عدد من معالجات الأحداث، لذا إذا كان تطبيقك يتضمّن إحداها، يمكن Firebase In-App Messaging استخدامها بدون أي إعدادات إضافية. إذا لم يكن لديك معالج بعد، يمكنك استخدام Firebase Dynamic Links. لمزيد من المعلومات، يُرجى قراءة المقالة إنشاء روابط ديناميكية على أجهزة iOS.
إضافة الإجراء إلى رسالتك باستخدام وحدة تحكّم Firebase
بعد أن يصبح تطبيقك مزوّدًا بمعالج روابط، ستكون مستعدًا لإنشاء حملة تتضمّن إجراءً. افتح وحدة تحكّم Firebase وانتقِل إلى المراسلة، ثم ابدأ حملة جديدة أو عدِّل حملة حالية. في هذه الحملة، قدِّم بطاقة ونص الزر وإجراء الزر أو إجراء صورة أو إجراء بانر، حيث يكون الإجراء رابطًا ملائمًا لصفحة معيّنة.
يعتمد تنسيق الإجراء على تنسيق الرسالة الذي تختاره. تحتوي النوافذ المنبثقة على أزرار إجراءات مع محتوى نص الزر ولون النص ولون الخلفية القابلة للتخصيص. من ناحية أخرى، تصبح الصور وبانرات أعلى الصفحة تفاعلية وتنفّذ الإجراء المحدّد عند النقر عليها.
تعديل مظهر الرسالة ومضمونها
تتيح لك Firebase In-App Messaging تخصيص طرق عرض الرسائل لتغيير طريقة عرض تطبيقك لتنسيق الرسائل وأنماط الخطوط وأشكال الأزرار وغيرها من التفاصيل. هناك طريقتان لتعديل طرق عرض الرسائل: تعديل طرق العرض التلقائية Firebase In-App Messaging أو إنشاء مكتبة طرق عرض الرسائل الخاصة بك من البداية.
تعديل شاشات العرض التلقائية
إنّ أبسط طريقة لتخصيص رسائلك هي الاستناد إلى رمز عرض الرسالة التلقائية في Firebase In-App Messaging.
استنساخ مستودع firebase-ios-sdk
للبدء، استنسِخ أحدث إصدار
من مستودع firebase-ios-sdk، وافتح
دليل InAppMessaging.
اختيار أنواع الرسائل المطلوب تعديلها
بعد استنساخ المستودع، يمكنك تعديل أيّ من أنواع الرسائل Firebase In-App Messaging أو جميعها:
Card وModal وBanner وImageOnly. يتوافق كل نوع مع تنسيق رسالة في عملية إنشاء الحملة Firebase In-App Messaging.
وبناءً على ذلك، يمكن لكل نوع الوصول إلى مجموعة مختلفة من البيانات، يتم تحديدها من خلال خيارات تخصيص الحملة في وحدة تحكّم Firebase:
| النوع | titleText | bodyText | textColor | backgroundColor | imageData | actionButton | secondaryActionButton |
|---|---|---|---|---|---|---|---|
| بطاقة | |||||||
| النافذة المنبثقة | |||||||
| بانر | |||||||
| ImageOnly |
تعديل رمز عرض الرسالة
مع مراعاة القيود المفروضة على أنواع الرسائل، يمكنك تعديلها بالطريقة التي تريدها. يمكنك إنشاء بانر يظهر في أسفل تطبيقك، أو نقل زر الإجراء في نافذة مشروطة، أو تضمين الرسالة داخل التطبيق في خلاصة المستخدم، أو إجراء أي تعديل آخر يجعل شكل الرسائل ومظهرها مناسبًا لتطبيقك.
هناك أمران رئيسيان يجب الانتباه إليهما عند تعديل طرق عرض الرسائل:
- أدلة أنواع الرسائل: لكل نوع من الرسائل دليل منفصل يحتوي على ملفات تحدّد منطق هذا النوع:
- لوحة العرض: تحتوي مكتبة
InAppMessagingأيضًا على ملف.storyboardيساعد في تحديد واجهة المستخدم لجميع أنواع الرسائل الثلاثة:
عدِّل الملفات في أدلة أنواع الرسائل المفضّلة والأقسام المقابلة من .storyboard لإنشاء عروض الرسائل المخصّصة.
تعديل ملف podfile لاستخدام رمز InAppMessaging المعدَّل
لإعداد Firebase In-App Messaging لاستخدام عروض الرسائل المعدّلة بدلاً من العروض التلقائية، عدِّل ملف podfile لاستخدام مكتبة InAppMessaging المخصّصة:
# Uncomment the next line to define a global platform for your project # platform :ios, '9.0' target 'YourProject' do # Comment the next line if you're not using Swift and don't want to use dynamic frameworks use_frameworks! # Pods for YourProject pod 'Firebase' # Remove the default InAppMessaging pod: # pod 'Firebase/InAppMessaging' # Overwrite it with a version that points to your local copy: pod `FirebaseInAppMessaging', :path => '~/Path/To/The/Cloned/Repo/' end
إنشاء مكتبة عرض الرسائل الخاصة بك
لا يقتصر الأمر على استخدام مكتبة InAppMessaging لإنشاء واجهة مستخدم لعرض الرسائل. يمكنك أيضًا كتابة الرمز الخاص بك من البداية.
إنشاء فئة تنفّذ البروتوكول InAppMessagingDisplay
تستخدِم Firebase In-App Messaging الفئة InAppMessaging للتعامل مع عمليات التواصل بين خوادم Firebase وتطبيقك. وتستخدِم هذه الفئة بدورها البروتوكول InAppMessagingDisplay لعرض الرسائل التي تتلقّاها.
لإنشاء مكتبة عرض خاصة بك، اكتب فئة تنفّذ البروتوكول.
يمكنك العثور على تعريف البروتوكول ووثائق حول كيفية الالتزام به في ملف FIRInAppMessagingDisplay.h ضمن مكتبة InAppMessaging.
ضبط messageDisplayComponent لاستخدام مكتبة عرض الرسائل
تستخدم InAppMessaging السمة
messageDisplayComponent
لتحديد العنصر
الذي سيتم استخدامه عند عرض الرسائل. اضبط هذه السمة على عنصر من فئة عرض الرسائل المخصّصة، لكي يعرف Firebase In-App Messaging أنّه يجب استخدام مكتبتك لعرض الرسائل:
InAppMessaging.inAppMessaging().messageDisplayComponent = yourInAppMessagingRenderingInstance