התכונה 'בזמן אמת' Remote Config מאפשרת לקבל מפתחות וערכים של פרמטרים מעודכנים ברגע שהם מתפרסמים בשרת. כך אפשר לעדכן במהירות כל סוג של מאפיין אפליקציה שנשלט באמצעות ערך של פרמטר Remote Config. בעזרת עדכונים בזמן אמת Remote Config, אתם יכולים:
- כדי להקטין את הסיכון, אפשר להשיק את התכונות בהדרגה למשתמשים מטורגטים, ולבצע חזרה לגרסה קודמת במקרה חירום אם צריך.
- כדי להגביר את התעניינות המשתמשים, אפשר להתאים במהירות את חוויית המשתמש בזמן השימוש באפליקציה. לדוגמה, אפשר לעדכן את הבאנרים ולהציע תמריצים למשתמשים שתואמים למאפייני משתמש ספציפיים, או לשנות באופן דינמי את רמת הקושי במשחק עבור קבוצות של שחקנים.Google Analytics
- צמצום התלות בגרסאות build והגברת הפרודוקטיביות של המפתחים: אפשר להשתמש בפרמטרים של Remote Config כדגלי תכונות כדי לחשוף פונקציונליות לצוותי הפיתוח והבדיקה, תוך שמירה על הסתרה שלה מהמשתמשים בסביבת הייצור.
למידע נוסף על דרכים לשימוש ב-Remote Config, אפשר לעיין במאמר מה אפשר לעשות עם Remote Config?
במדריך הזה:
- מידע נוסף על הקשר בין הלקוח לשרת שתומך בעדכונים בזמן אמת
- הסבר על הפונקציונליות של נתונים בזמן אמת ב-SDK.
- כאן מוסבר איך משתמשים בעדכונים בזמן אמת כדי לשמור על עדכניות של הגדרות האפליקציה.
החיבור בזמן אמת בין הלקוח לשרת
כשמטמיעים את Remote Config בזמן אמת באפליקציה, יוצרים מאזין בזמן אמת שפותח חיבור HTTP לשרת העורפי של Remote Config. הבקשה כוללת את גרסת ההגדרה שמאוחסנת כרגע במטמון במכשיר. שרת Remote Config בזמן אמת משתמש בהודעת ביטול תוקף כדי לסמן לאפליקציה מתי צריך לאחזר גרסה חדשה יותר של הגדרות בצד השרת.
אם בשרת יש גרסה חדשה יותר, הוא שולח את אות הביטול באופן מיידי.
אם אין גרסה חדשה יותר, החיבור נשאר פתוח והמכשיר מחכה עד שגרסה חדשה תפורסם בשרת. כשחבילת ה-SDK של הלקוח מקבלת אות ביטול, היא מאחזרת אותו באופן אוטומטי ואז קוראת לחזרה (callback) של מאזין שנרשם כשפתחתם את חיבור המאזין. הפעולה הזו דומה לקריאה לפונקציה fetch
שאפשר לבצע באמצעות ה-SDK, אבל היא לא משתמשת במטמון או בהגדרה minimumFetchInterval
. החיבור בין הלקוח לשרת נשמר בזמן שהאפליקציה פועלת בחזית.

החיבור בין הלקוח לשרת מתבצע באמצעות HTTP, ולכן לא נדרשות תלויות בספריות אחרות.
האזנה לעדכונים
עדכונים בזמן אמת משלימים את הקריאות של Remote Config fetch
. מומלץ לקרוא לפונקציה fetch כשהאפליקציה מתחילה (או בשלב כלשהו במהלך מחזור החיים של האפליקציה) ולהאזין לעדכונים בזמן אמת Remote Config במהלך סשן המשתמש כדי לוודא שיש לכם את הערכים העדכניים ביותר ברגע שהם מתפרסמים בשרת.
כדי להאזין לעדכונים, מתקשרים אל
addOnConfigUpdateListener
,
ומטמיעים קריאה חוזרת שמופעלת בכל פעם שעדכון Remote Config זמין באפליקציה. מאחורי הקלעים, הקריאה הזו מתחילה להאזין לעדכונים משרת Remote Config. מידע נוסף על הקשר בין הלקוח לשרת זמין בקטע הקודם.
פונקציית ה-callback היא לרוב מקום טוב להשתמש ב-activate
כדי להפוך את פרמטרי ההגדרה המעודכנים לזמינים לאפליקציה. במאמר Firebase Remote Config Loading Strategies מוסבר על אסטרטגיות נוספות להפעלת ערכי פרמטרים כשמשתמשים ב-Remote Config בזמן אמת.
הפעלה סלקטיבית של ערכי פרמטרים
כשמתקשרים אל
addOnConfigUpdateListener
,
אפשר להמתין לשינוי ולהפעיל אותו.
onUpdate
callback מופעלת כשמתבצע אחזור אוטומטי של גרסה חדשה של התבנית, וכשיש שינויים בגרסה החדשה הזו בערכי הפרמטרים שמופעלים כרגע באפליקציה.
הקריאות החוזרות האלה מופעלות עם הפרמטר configUpdate
. configUpdate
contains
updatedKeys
,
which is the set of changed parameter keys that initiated the real-time
update and includes the following:
- מפתחות פרמטרים שנוספו או הוסרו
- מפתחות הפרמטרים שהערכים שלהם השתנו
- מפתחות פרמטרים שהמטא-נתונים שלהם השתנו (לדוגמה, Remote Config פרטים להתאמה אישית)
- מפתחות פרמטרים שמקור הערך שלהם השתנה (לדוגמה, ערך ברירת מחדל באפליקציה שמתעדכן לערך בצד השרת)
אם אתם משתמשים במאזין בזמן אמת בתצוגה מסוימת באפליקציה, אתם יכולים לבדוק אם הפרמטרים שרלוונטיים לתצוגה הזו השתנו לפני ההפעלה.
לפעמים, אחזור (שמופעל כשקוראים ל-method fetch
או על ידי Remote Config בזמן אמת) לא מוביל לעדכון של הלקוח. במקרים האלה, לא תתבצע קריאה לשיטה
onUpdate
או להשלמה.
הוספה והסרה של מאזינים
addOnConfigUpdateListener
היא נקודת הכניסה העיקרית לRemote Config בזמן אמת. הפעלת ה-listener הזה בפעם הראשונה במחזור החיים של האפליקציה פותחת את החיבור לקצה העורפי.
בשיחות הבאות נעשה שימוש חוזר באותו חיבור, ומתבצעת מולטיפלקסינג של הודעת הביטול שמתוארת במאמר בנושא חיבור בזמן אמת בין לקוח לשרת.
הקריאה מחזירה 'רישום של מאזין', שיש לו method שנקראת
remove
.
כדי להפסיק את ההאזנה, מאחסנים את ההפניה לרישום של רכיב ה-listener. מתקשרים אל
remove
כדי להפסיק את ההאזנה לרישום הזה. אם זה מאזין רשום יחיד, קריאה ל-remove
סוגרת את החיבור בזמן אמת לשרת.
השלבים הבאים
כדי להגדיר את Remote Config ולהתחיל להמתין לעדכונים בזמן אמת, אפשר לעיין במאמר תחילת העבודה עם Firebase Remote Config.