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