הבנת הגדרת התצורה מרחוק בזמן אמת


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 של המאזין שרשום כשפתחתם את החיבור של המאזין. האחזור הזה דומה לקריאת האחזור שאפשר לבצע באמצעות ה-SDK, אבל הוא עוקף את כל הגדרות השמירה במטמון או minimumFetchInterval. החיבור בין הלקוח לשרת נשמר בזמן שהאפליקציה בחזית.

תהליך עבודה של שרת-לקוח להגדרת תצורה מרחוק בזמן אמת
תהליך עבודה בזמן אמת של שרת-לקוח Remote Config

מכיוון שהחיבור בין הלקוח לשרת מתבצע באמצעות HTTP, אין צורך בספריות אחרות.

האזנה לעדכונים

עדכונים בזמן אמת משלימים את הקריאות ל-Remote Config fetch. מומלץ להפעיל את האחזור כשהאפליקציה מתחילה לפעול (או מתישהו במהלך מחזור החיים של האפליקציה) ולהאזין לעדכוני Remote Config בזמן אמת במהלך סשן המשתמש, כדי לוודא שתקבלו את הערכים העדכניים ברגע שהם מתפרסמים בשרת.

כדי להאזין לעדכונים, צריך לבצע את הקריאה addOnConfigUpdateListener,ולהטמיע קריאה חוזרת (callback) שתופעל בכל פעם שעדכון של Remote Config זמין באפליקציה. מאחורי הקלעים, הקריאה הזו מתחילה להאזין לעדכונים מהשרת של Remote Config. מידע נוסף על הקשר בין השרת ללקוח זמין בקטע הקודם.

בדרך כלל, קריאה חוזרת היא מקום טוב להשתמש ב-activate כדי להפוך את הפרמטרים המעודכנים של ההגדרות לזמינים לאפליקציה. במאמר שיטות טעינה של Remote Config ב-Firebase מפורטות שיטות נוספות להפעלת ערכי הפרמטרים כשמשתמשים ב-Remote Config בזמן אמת.

הפעלה סלקטיבית של ערכי פרמטרים

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

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

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

  • נוספו או הוסרו מפתחות לפרמטרים
  • מפתחות פרמטרים שהערכים שלהם השתנו
  • מפתחות פרמטרים שהמטא-נתונים שלהם השתנו (לדוגמה, מידע על ההתאמה האישית של Remote Config)
  • מפתחות של פרמטרים שמקור הערך שלהם השתנה (לדוגמה, ערך ברירת מחדל באפליקציה שמתעדכן לערך בצד השרת)

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

לפעמים אחזור (שמתבצעת כשקוראים ל-method‏ fetch או על ידי Remote Config בזמן אמת) לא מוביל לעדכון בלקוח. במקרים כאלה, לא תתבצע קריאה לשיטה onUpdate ל-method או להשלמת הפעולה.

הוספה והסרה של מאזינים

addOnConfigUpdateListener היא נקודת הכניסה הראשית ל-Remote Config בזמן אמת. קריאה ל-listener הזה בפעם הראשונה במחזור החיים של האפליקציה פותחת את החיבור לקצה העורפי. בקריאות הבאות נעשה שימוש חוזר באותו חיבור, תוך שימוש במולטיפלקס של הודעת ביטול התוקף שמתוארת בקטע החיבור בין השרת ללקוח בזמן אמת.

הקריאה מחזירה 'רישום מאזין', שיש לו method שנקרא remove.

כדי להפסיק את ההאזנה, שומרים את ההפניה לרישום המאזין. כדי להפסיק את ההאזנה באותו רישום, צריך להתקשר למספר remove. אם זהו המאזין הרשום היחיד, קריאה ל-remove סוגרת את החיבור בזמן אמת לשרת.

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

השלבים הבאים

במאמר תחילת העבודה עם Firebase Remote Config מוסבר איך להגדיר את Remote Config ולהתחיל להמתין לעדכונים בזמן אמת.