התאמה אישית של הודעות בתוך האפליקציה ב-Firebase


‫עיצוב הודעות בתוך האפליקציה בעזרת Firebase מספק קבוצה שימושית של התנהגויות מוגדרות מראש וסוגי הודעות עם מראה ותחושה שמוגדרים כברירת מחדל, אבל במקרים מסוימים יכול להיות שתרצו להרחיב את ההתנהגויות ואת תוכן ההודעות. התכונה 'הודעות בתוך האפליקציה' מאפשרת להוסיף פעולות להודעות ולהתאים אישית את המראה והסגנון שלהן.

הוספת פעולה להודעה

באמצעות פעולות, אתם יכולים להשתמש בהודעות בתוך האפליקציה כדי להפנות משתמשים לאתר או למסך ספציפי באפליקציה.

‫Firebase In-App Messaging משתמש במטפלי קישורים כדי לעבד פעולות. ערכת ה-SDK יכולה להשתמש במספר רכיבי handler, כך שאם לאפליקציה שלכם כבר יש אחד, Firebase In-App Messaging יכולה להשתמש בו בלי שתצטרכו לבצע הגדרה נוספת. אם עדיין אין לכם מטפל, אתם יכולים להשתמש ב-Firebase Dynamic Links. מידע נוסף זמין במאמר בנושא יצירת קישורים דינמיים ב-iOS.

הוספת הפעולה להודעה באמצעות מסוף Firebase

אחרי שמוסיפים לאפליקציה רכיב לטיפול בקישורים, אפשר ליצור קמפיין עם פעולה.

  1. במסוף Firebase, עוברים אל DevOps & Engagement >‏ Messaging.

  2. מפעילים את תהליך העבודה כדי להגדיר קמפיין חדש:

    • אם זה הקמפיין הראשון שלכם:

      1. לוחצים על יצירת הקמפיין הראשון.
      2. בוחרים באפשרות הודעות מ-Firebase שמוצגות בתוך האפליקציה ולוחצים על יצירה.
    • אם כבר יצרתם קמפיינים:

      1. בכרטיסייה קמפיינים, לוחצים על קמפיין חדש.
      2. בוחרים באפשרות הודעות באפליקציה.
  3. פועלים לפי ההוראות במסך כדי להגדיר את הקמפיין.

  4. מזינים כרטיס, טקסט של לחצן ופעולת לחצן, פעולת תמונה או פעולת באנר, כאשר הפעולה היא קישור עמוק רלוונטי.

הפורמט של הפעולה תלוי בפריסת ההודעה שתבחרו. בחלונות קופצים יש כפתורי פעולה עם תוכן טקסט, צבע טקסט וצבע רקע שניתנים להתאמה אישית. לעומת זאת, תמונות ובאנרים עליונים הופכים לאינטראקטיביים ומפעילים את הפעולה שצוינה כשמקישים עליהם.

שינוי העיצוב והסגנון של ההודעה

‫Firebase In-App Messaging מאפשרת לכם להתאים אישית את תצוגת ההודעות כדי לשנות את האופן שבו האפליקציה מעבדת את פריסת ההודעות, סגנונות הגופן, צורות הכפתורים ופרטים אחרים. יש שתי דרכים לשנות את התצוגה של ההודעות: לשנות את התצוגה שמוגדרת כברירת מחדל Firebase In-App Messagingאו ליצור ספרייה משלכם של תצוגות הודעות מאפס.

הערה: המוצר הזה לא זמין ביעדים של macOS, ‏ Mac Catalyst, ‏ App Clip או watchOS.

שינוי התצוגות שמוגדרות כברירת מחדל

הדרך הכי פשוטה להתאים אישית את ההודעות היא להשתמש בקוד ברירת המחדל להצגת ההודעות של Firebase In-App Messaging.

שכפול מאגר firebase-ios-sdk

כדי להתחיל, משכפלים את הגרסה האחרונה של מאגר firebase-ios-sdk ופותחים את הספרייה InAppMessaging.

בחירת סוגי ההודעות שרוצים לשנות

אחרי שיבוט המאגר, אפשר לשנות את כל סוגי ההודעות Firebase In-App Messaging, ‏Card, ‏Modal ו-ImageOnly או רק חלק מהם: Banner כל סוג מתאים לפריסת הודעה בתהליך יצירת הקמפיין 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
אחרי שתסיימו, תוכלו לעדכן את ה-pods, לבנות מחדש את האפליקציה ולראות את ההודעות החדשות והמותאמות אישית.

יצירת ספרייה משלכם להצגת הודעות

אתם לא חייבים לעבוד מתוך InAppMessagingהספרייה כדי ליצור ממשק משתמש להצגת הודעות. אפשר גם לכתוב קוד משלכם מאפס.

יוצרים מחלקה שמטמיעה את הפרוטוקול InAppMessagingDisplay

‫Firebase In-App Messaging משתמש במחלקה InAppMessaging כדי לטפל בתקשורת בין שרתי Firebase לבין האפליקציה. המחלקה הזו, בתורה, משתמשת בפרוטוקול InAppMessagingDisplay כדי להציג את ההודעות שהיא מקבלת. כדי ליצור ספרייה משלכם של תצוגות, כותבים מחלקה שמיישמת את הפרוטוקול.

הגדרת הפרוטוקול והתיעוד בנושא התאמה לפרוטוקול מופיעים בקובץ FIRInAppMessagingDisplay.h של ספריית InAppMessaging.

הגדרת messageDisplayComponent לשימוש בספריית הצגת ההודעות

הכלי InAppMessaging משתמש במאפיין messageDisplayComponent כדי לקבוע באיזה אובייקט להשתמש כשהוא מציג הודעות. מגדירים את המאפיין הזה לאובייקט של מחלקת התצוגה של ההודעה המותאמת אישית, כדי שמערכת Firebase In-App Messaging תדע להשתמש בספרייה שלכם לעיבוד ההודעות:

InAppMessaging.inAppMessaging().messageDisplayComponent = yourInAppMessagingRenderingInstance