אפשר להגדיר תבניות לתרחישים לדוגמה של לקוחות וגם של שרתים. לקוח/ה מוצגות בכל המופעים של האפליקציה שבהם מוטמע Firebase ערכות SDK של לקוח עבור Remote Config, כולל Android, Apple, Web, Unity, אפליקציות Flutter ו-C++. Remote Config פרמטרים וערכים מ- תבניות ספציפיות לשרת מוצגות להטמעות של Remote Config (כולל Cloud Run ו-Cloud Functions) שמשתמשים ב-Firebase Admin Node.js SDK גרסה 12.1.0 ואילך.
כשמשתמשים במסוף Firebase או Remote Config ממשקי API לקצה העורפי, מגדירים פרמטר אחד או יותר זוגות) ולספק ערכי ברירת מחדל בתוך האפליקציה עבור הפרמטרים האלה. אפשר לשנות ערכי ברירת מחדל בתוך האפליקציה על ידי הגדרה של ערכי פרמטרים. מפתחות הפרמטרים וערכי הפרמטרים הם מחרוזות, אבל אפשר להמיר את ערכי הפרמטרים בתור סוגי נתונים אחרים כשמשתמשים בערכים האלה באפליקציה שלך.
באמצעות המסוף של Firebase, Admin SDK או API ל-REST של Remote Config, אפשר ליצור ערכי ברירת מחדל חדשים וגם ערכים מותנים שמשמשים לטירגוט קבוצות של אפליקציות במקרים שונים. בכל פעם שמעדכנים את ההגדרות האישיות במסוף Firebase, מערכת Firebase יוצרת ומפרסמת גרסה חדשה של התבנית Remote Config. הגרסה הקודמת נשמרה כדי לאפשר לך לאחזר או לחזור למצב הקודם לפי הצורך. הפעולות האלה זמינות עבורך במסוף Firebase, Firebase Admin SDK וה-API ל-REST, והם מתוארים באופן נרחב יותר ניהול Remote Config גרסאות של תבניות.
במדריך הזה נסביר מהם פרמטרים, תנאים, כללים, תנאים ואיך ערכי פרמטרים שונים מקבלים עדיפות השרת של Remote Config והאפליקציה שלך. תמצאו גם פרטים על הסוגים הכללים שמשמשים ליצירת תנאים.
תנאים, כללים וערכים מותנים
תנאי משמש לטירגוט קבוצה של מכונות של אפליקציה. הוגדרו תנאים
לפחות כלל אחד שחייב להיות שווה ל-true
כדי שהתנאי
שווה ל-true
למופע נתון של אפליקציה. אם הערך של כלל הוא
לא מוגדר (לדוגמה, כשאין ערך זמין), הכלל יעריך
false
לדוגמה, פרמטר שמגדיר את דף הבית של האפליקציה יכול להציג תמונות שונות על סמך סוג מערכת ההפעלה באמצעות הכלל if device_os = Android
:
או תנאי זמן יכול לשמש כדי לקבוע מתי האפליקציה מציגה הצעות מיוחדות פריטים של קידום מכירות.
לפרמטר יכולים להיות כמה תנאים מותנים שמשתמשים בתנאים שונים, ופרמטרים יכולים לשתף תנאים בתוך פרויקט. בכרטיסייה 'פרמטרים'. במסוף Firebase, ניתן לראות את אחוז האחזור של כל אחד מהם והערכים המותנים של הפרמטר. המדד הזה מציין את אחוז הבקשות ב-24 השעות האחרונות שקיבלו כל ערך.
עדיפות לערך הפרמטרים
לפרמטר יכולים להיות כמה ערכים מותנים. הכללים הבאים קובעים איזה ערך יאוחזר מהשדה Remote Config השרת, ואיזה ערך נמצא בשימוש במופע של אפליקציה מסוימת בנקודה מסוימת שעה:
ערכי הפרמטרים מאוחזרים בהתאם לעדיפות הבאה list
קודם מוחלים ערכים מותנים, אם יש תנאים שמתקבלים בהם הערכים
true
למכונה נתונה של האפליקציה. אם מספר תנאים מקבלים את הערךtrue
, ההתראה הראשונה (עליונה) שמוצגת בממשק המשתמש של מסוף Firebase מקבלת עדיפות, וגם ערכים מותנים שמשויכים לתנאי הזה מסופקים כשאפליקציה מאחזרת ערכים מהקצה העורפי. אפשר לשנות את העדיפות של התנאים על ידי תנאים לגרירה ושחרור בכרטיסייה תנאיםאם אין ערכים מותנים עם תנאים שהערך שלהם הוא
true
, ערך ברירת המחדל של Remote Config מצוין כשאפליקציה מאחזרת מהקצה העורפי. אם פרמטר מסוים לא קיים בקצה העורפי, או ערך ברירת המחדל הוא Use in-app default (שימוש בברירת המחדל בתוך האפליקציה), ואז לא יהיה ערך שצוינו עבור הפרמטר הזה כשאפליקציה מאחזרת ערכים.
באפליקציה שלך, ערכי הפרמטרים מוחזרים על ידי get
שיטות בהתאם
את רשימת העדיפות הבאה
- אם ערך אוחזר מהקצה העורפי ולאחר מכן הופעל, האפליקציה תשתמש בערך שאוחזר. ערכי הפרמטרים שהופעלו הם קבועים.
אם לא אוחזר ערך מהקצה העורפי או אם ערכים אוחזרו הקצה העורפי של Remote Config לא הופעל, האפליקציה משתמשת בתוך האפליקציה כערך ברירת המחדל.
למידע נוסף על קבלה והגדרה של ערכי ברירת מחדל, ראו הורדת Remote Config ברירות מחדל של תבניות.
אם לא הוגדר ערך ברירת מחדל בתוך האפליקציה, האפליקציה תשתמש בסוג סטטי (למשל
0
עבורint
ו-false
עבורboolean
).
איור זה מסכם את האופן שבו ערכי הפרמטרים מקבלים עדיפות הקצה העורפי Remote Config, ובאפליקציה שלך:
סוגי נתונים של ערכי פרמטרים
בעזרת Remote Config אפשר לבחור סוג נתונים לכל פרמטר, ומערכת Analytics מאמתת את כל ערכי Remote Config בהתאם לסוג הזה לפני עדכון התבנית. סוג הנתונים מאוחסן ומוחזר ב-getRemoteConfig
בקשה.
סוגי הנתונים הנתמכים הם:
String
Boolean
Number
JSON
בממשק המשתמש של מסוף Firebase, אפשר לבחור את סוג הנתונים בתפריט הנפתח שליד מפתח הפרמטר. ב-API ל-REST אפשר להגדיר את הסוגים באמצעות השדה value_type
באובייקט הפרמטר.
קבוצות פרמטרים
בעזרת Remote Config אפשר לקבץ את הפרמטרים יחד כדי שיהיה מאורגן יותר ממשק משתמש ושיפור נוחות השימוש.
לדוגמה, נניח שצריך להפעיל או להשבית שלושה סוגי אימות שונים בזמן ההשקה של תכונת התחברות חדשה. בעזרת Remote Config אפשר ליצור את שלושת הפרמטרים כדי להפעיל את הסוגים הרצויים, ולאחר מכן לארגן אותם קבוצה בשם "New Login", ללא צורך להוסיף תחיליות או למיון מיוחד.
אפשר ליצור קבוצות פרמטרים באמצעות המסוף Firebase או Remote Config API בארכיטקטורת REST. לכל קבוצת פרמטרים שיוצרים יש שם ייחודי תבנית Remote Config. כשיוצרים קבוצות פרמטרים, חשוב לזכור:
- אפשר לכלול פרמטרים בקבוצה אחת בלבד בכל רגע נתון, ועדיין המפתח של הפרמטר צריך להיות ייחודי לכל הפרמטרים.
- השמות של קבוצות הפרמטרים מוגבלים ל-256 תווים.
- אם משתמשים גם ב-API ל-REST וגם במסוף Firebase, צריך לוודא הלוגיקה של API ל-REST עודכנה כדי לטפל בקבוצות פרמטרים בזמן פרסום.
יצירה או שינוי של קבוצות פרמטרים באמצעות המסוף Firebase
אפשר לקבץ פרמטרים בכרטיסייה Parameters במסוף Firebase. כדי ליצור או לשנות קבוצה:
- בוחרים באפשרות ניהול קבוצות.
- מסמנים את התיבות לצד הפרמטרים שרוצים להוסיף ולבחור בתיבות הסימון העברה לקבוצה.
- בוחרים קבוצה קיימת או יוצרים קבוצה חדשה על ידי הזנת שם תיאור ובוחרים באפשרות יצירת קבוצה חדשה. אחרי ששומרים קבוצה, היא זמינה לפרסום באמצעות לחצן פרסום שינויים.
יצירת קבוצות באופן פרוגרמטי
ה-API ל-REST של Config מרוחק מספק שיטה אוטומטית ליצירה ולפרסום של קבוצות פרמטרים. בהנחה שאתם מכירים את REST ומגדירים לכם הרשאה לאשר בקשות ב-API, תוכלו לבצע את השלבים הבאים כדי לנהל קבוצות באופן פרוגרמטי:
- אחזור התבנית הנוכחית
- הוספת אובייקטים של JSON לייצוג קבוצות הפרמטרים
- מפרסמים את קבוצות הפרמטרים באמצעות בקשת HTTP PUT.
האובייקט parameterGroups
מכיל מפתחות קבוצה, עם תיאור מקונן וגם
רשימה של פרמטרים מקובצים. חשוב לזכור שכל מפתח קבוצה חייב להיות ייחודי באופן גלובלי.
לדוגמה, זהו קטע מתיקון של תבנית שמוסיף את הפרמטר
קבוצה "תפריט חדש" עם פרמטר אחד, pumpkin_spice_season
:
{ "parameters": {}, "version": { "versionNumber": "1", … }, "parameterGroups": { "new menu": { "description": "New Menu", "parameters": { "pumpkin_spice_season": { "defaultValue": { "value": "true" }, "description": "Whether it's pumpkin spice season." } } } } }
סוגים של כללי תנאי
סוגי הכללים הבאים נתמכים במסוף Firebase. שווה ערך זמינות ב-Remote Config API ל-REST, כפי שמפורט הפניה לביטויים מותנים.
סוג הכלל | אופרטורים | ערכים | הערה |
אפליקציה | == | יש לבחור מתוך רשימה של מזהי אפליקציות של אפליקציות שמשויכות ל-Firebase פרויקט. | כשאתם מוסיפים אפליקציה ל-Firebase, אתם מזינים מזהה חבילה או שם חבילה ל-Android שמגדירים מאפיין שמוצג בתור מזהה אפליקציה בכללים של Remote Config.
אפשר להשתמש במאפיין הזה באופן הבא:
|
גרסת אפליקציה |
לערכי מחרוזת: תואם בדיוק, מכיל, לא מכיל, ביטוי רגולרי לערכים מספריים: =, ≠, >, ≥, <, ≤ |
מציינים את גרסאות האפליקציה שרוצים לטרגט. לפני שמשתמשים בכלל הזה, צריך להשתמש בכלל מזהה אפליקציה כדי לבחור אפליקציה ל-Android או ל-Apple שמשויכת לפרויקט Firebase. |
לפלטפורמות של Apple: משתמשים ב-CFBundleShortVersionString של האפליקציה. הערה: צריך לוודא שבאפליקציה של Apple נעשה שימוש ב-Firebase Apple Platform SDK. בגרסה 6.24.0 ואילך, כי CFBundleShortVersionString לא נשלח גרסאות קודמות (עיינו בנתוני הגרסה). ב-Android: משתמשים ב-versionName של האפליקציה. השוואות של מחרוזות בכלל הזה הן תלויות אותיות רישיות. כשמשתמשים באופרטור תואם בדיוק, מכיל, לא מכיל , או ביטוי רגולרי, אפשר לבחור כמה ערכים. כשמשתמשים באופרטור ביטוי רגולרי, אפשר ליצור אותו. ביטויים ב-RE2 הפורמט. הביטוי הרגולרי יכול להתאים לכל גרסת היעד או לחלק ממנה String. אפשר גם להשתמש בעוגנים ^ ו-$ כדי להתאים להתחלה, לסוף או למחרוזת היעד כולה. |
מספר Build |
לערכי מחרוזת: תואם בדיוק, מכיל, לא מכיל, ביטוי רגולרי לערכים מספריים: =, ≠, >, ≥, <, ≤ |
מציינים את גרסאות ה-build של האפליקציה שרוצים לטרגט. לפני שמשתמשים בכלל הזה, צריך להשתמש בכלל מזהה אפליקציה כדי לבחור Apple או אפליקציה ל-Android שמשויכת לפרויקט Firebase. |
המפעיל הזה זמין רק לאפליקציות של Apple ו-Android. הוא תואם לקוד של האפליקציה CFBundleVersion ל-Apple ו-versionCode ל-Android. השוואות של מחרוזות לכלל הזה הן תלוי אותיות רישיות. כשמשתמשים בהתאמה מדויקת, contains, לא מכיל , או ביטוי רגולרי, אפשר לבחור כמה ערכים. כשמשתמשים באופרטור ביטוי רגולרי, אפשר ליצור אותו. ביטויים ב-RE2 הפורמט. הביטוי הרגולרי יכול להתאים לכל גרסת היעד או לחלק ממנה String. אפשר גם להשתמש בעוגנים ^ ו-$ כדי להתאים ההתחלה, הסיום או שלמות של מחרוזת יעד. |
פלטפורמה | == | iOS Android אינטרנט |
|
מערכת הפעלה | == |
מציינים את מערכות ההפעלה שרוצים לטרגט. לפני שמשתמשים בכלל הזה, צריך להשתמש בכלל מזהה אפליקציה כדי לבחור אפליקציית אינטרנט שמשויכת לפרויקט Firebase. |
הכלל הזה מקבל את הערך true למכונה נתונה של אפליקציית אינטרנט אם מערכת ההפעלה והגרסה שלה תואמות לערך יעד ברשימה שצוינה.
|
דפדפן | == |
לציין את הדפדפנים שאליהם רוצים לטרגט. לפני שמשתמשים בכלל הזה, צריך להשתמש בכלל מזהה אפליקציה כדי לבחור אפליקציית אינטרנט שמשויכת לפרויקט Firebase. |
הכלל הזה מקבל את הערך true למכונה נתונה של אפליקציית אינטרנט אם הדפדפן והגרסה שלו תואמים לערך יעד ברשימת הערכים שצוינה.
|
קטגוריית מכשיר | אינו, אינו | נייד | הכלל הזה בודק אם המכשיר שניגש לאפליקציית האינטרנט שלכם הוא מכשיר נייד או לא נייד (מחשב או מסוף). סוג הכלל הזה זמין רק לאינטרנט תרגום מכונה. |
שפות | נמצא ב- | בוחרים שפה אחת או יותר. | הערך של הכלל הוא true למופע נתון של אפליקציה, אם
המופע של האפליקציה מותקן במכשיר שמשתמש באחת מהשפות המפורטות.
|
ארץ/אזור | נמצא ב- | צריך לבחור מדינה אחת או אזור אחד לפחות. | הכלל הזה מקבל את הערך true למכונה נתונה של אפליקציה אם המכונה נמצאת באחת מהמדינות או מהאזורים שמפורטים. קוד המדינה של המכשיר נקבע לפי כתובת ה-IP של המכשיר בבקשה, או לפי קוד המדינה שנקבע על ידי Firebase Analytics (אם נתוני Analytics משותפים עם Firebase).
|
קהלי משתמשים | כולל לפחות אחד | צריך לבחור אחד או יותר מתוך רשימה של Google Analytics קהלים שהגדרתם לפרויקט. | במסגרת הכלל הזה, נדרש כלל של מזהה אפליקציה כדי לבחור אפליקציה שמשויכת אל פרויקט Firebase. הערה: בגלל שקהלים רבים של Analytics מוגדרים לפי אירועים או של מאפייני משתמש, שיכולים להתבסס על הפעולות של משתמשי האפליקציה, ייתכן פרק זמן מסוים עד שכלל משתמש בקהל ייכנס לתוקף באפליקציה נתונה מכונה. |
מאפיין משתמש |
לערכי מחרוזת:
מכיל, לא מכיל, תואם בדיוק, ביטוי רגולרי לערכים מספריים: =, ≠, >, ≥, <, ≤ הערה: אצל הלקוח, אפשר להגדיר למשתמש רק ערכי מחרוזות נכסים. בתנאים שמשתמשים באופרטורים מספריים, הפונקציה Remote Config ממירה את הערך של מאפיין משתמש למספר שלם/צף. |
צריך לבחור מתוך רשימה של משתמשי Google Analytics זמינים נכסים. | כדי ללמוד איך אפשר להשתמש במאפייני המשתמש כדי להתאים אישית את האפליקציה בשביל
פלחים ספציפיים מאוד של בסיס המשתמשים שלכם,
Remote Config ומאפייני משתמשים.
כדי לקבל מידע נוסף על מאפייני משתמש, אפשר לעיין במדריכים הבאים: כשמשתמשים בהתאמה מדויקת, contains, לא מכיל או האופרטור ביטוי רגולרי, אפשר לבחור כמה ערכים. כשמשתמשים באופרטור ביטוי רגולרי, אפשר ליצור ביטויים רגולריים בפורמט RE2. הביטוי הרגולרי יכול להתאים לכל גרסת היעד או לחלק ממנה String. אפשר גם להשתמש בעוגנים ^ ו-$ כדי להתאים ההתחלה, הסיום או שלמות של מחרוזת יעד. הערה: מאפייני משתמשים שנאספים באופן אוטומטי אינם זמינים כשיוצרים Remote Config תנאים. |
משתמש באחוז אקראי | פס ההזזה (במסוף Firebase.
ב-API ל-REST
את האופרטורים <= , > ו-between ).
|
0-100 | משתמשים בשדה הזה כדי להחיל שינוי על דוגמה אקראית של מופעי אפליקציה (בדגימה בגדלים קטנים עד 0 .0001%), באמצעות ווידג'ט המחוון כדי לפלח משתמשים שאקראיים באופן אקראי (מופעי אפליקציה) לקבוצות. כל מופע של אפליקציה ממופה באופן קבוע לערך שלם אקראי או מספר עשרוני, בהתאם לזרע שהוגדר בפרויקט. כלל ישתמש במפתח ברירת המחדל (מוצג כ-Edit seed) Firebase), אלא אם משנים את ערך המקור. אפשר להחזיר כלל אל באמצעות מפתח ברירת המחדל על ידי ניקוי השדה מקור. לטפל בעקביות באותם מופעים של האפליקציה באחוז נתון משתמשים באותו ערך בסיס בכל התנאים. לחלופין, בחר קבוצה של מופעי אפליקציה שמוקצים באופן אקראי בטווח אחוזים נתון שמציין מקור חדש. לדוגמה, כדי ליצור שני תנאים קשורים שכל אחד מהם חל על 5% מהמשתמשים באפליקציה לא חופפים, אפשר להגדיר תנאי אחד שיתאים באחוז מסוים בין 0% ל-5% ולהגדיר תנאי נוסף שיתאים לטווח. בין 5% ל-10%. כדי לאפשר למשתמשים מסוימים להופיע באופן אקראי בשתי הקבוצות, אפשר להשתמש ב- ערכי בסיס שונים לכללים בתוך כל תנאי. |
פלח מיובא | נמצא ב- | בוחרים פלח מיובא אחד או יותר. | בכלל הזה עליך להגדיר פלחים מיובאים. |
תאריך/שעה | לפני, אחרי | תאריך ושעה שצוינו, באזור הזמן של המכשיר או למשל "(GMT+11) שעון סידני." | השוואה בין השעה הנוכחית לבין זמן השליפה של המכשיר. |
פתיחה ראשונה | לפני, אחרי | תאריך ושעה שצוינו, באזור הזמן שצוין. | ההתאמה מתבצעת למשתמשים שפותחים את האפליקציה המטורגטת בפעם הראשונה בטווח הזמן שצוין. נדרשות ערכות ה-SDK הבאות:
|
מזהה ההתקנה | נמצא ב- | מציינים מזהה התקנה אחד או יותר (עד 50) לטירגוט. | הערך של כלל זה הוא true להתקנה נתונה, אם
המזהה של ההתקנה נמצא ברשימת הערכים המופרדים בפסיקים.
הוראות לקבלת מזהי התקנה אחזור מזהי לקוח. |
המשתמש קיים | (אין אופרטור) | טירגוט לכל המשתמשים בכל האפליקציות בפרויקט הנוכחי. |
אפשר להשתמש בכלל התנאי הזה כדי להתאים לכל המשתמשים בפרויקט, בלי קשר ל- של אפליקציה או פלטפורמה. |
פרמטרים ותנאים של חיפוש
אפשר לחפש את מפתחות הפרמטרים, ערכי הפרמטרים והתנאים של הפרויקט במסוף Firebase באמצעות תיבת החיפוש שבחלק העליון של הכרטיסייה Remote Config Parameters.
מגבלות על פרמטרים ועל תנאים
בפרויקט Firebase אפשר לכלול עד 2,000 פרמטרים ועד 500 את התנאים וההגבלות. מפתחות פרמטרים יכולים להיות באורך של עד 256 תווים, חייבים להתחיל ב קו תחתון או אות באנגלית (A-Z, a-z), ועשוי לכלול גם . האורך הכולל של מחרוזות ערכי הפרמטרים בפרויקט לא יכול לחרוג מ-1,000,000 תווים.
הצגת שינויים בפרמטרים ובתנאים
אפשר לראות את השינויים האחרונים בתבניות של Remote Config ממסוף Firebase. לכל פרמטר ותנאי ספציפיים, אפשר:
בודקים את שם המשתמש ששונה לאחרונה את הפרמטר או את התנאי.
אם השינוי בוצע באותו יום, אפשר להציג את מספר הדקות או שעות שחלפו מאז פרסום השינוי תבנית Remote Config.
אם השינוי התרחש לפני יום אחד או יותר, אפשר להציג את התאריך שבו השינוי פורסם בתבנית Remote Config הפעילה.
עדכונים בפרמטרים
בדף Remote Config Parameters, בעמודה Last published מוצג המשתמש האחרון ששינה כל פרמטר ואת תאריך הפרסום האחרון של השינוי:
כדי להציג מטא-נתונים של שינויים של פרמטרים מקובצים, מרחיבים את קבוצת הפרמטרים.
כדי למיין בסדר עולה או יורד לפי תאריך הפרסום, לוחצים על תווית העמודה פורסם לאחרונה.
עדכונים במצב המוצר
ב-Remote Config תנאים, אפשר הצגת המשתמש האחרון ששינה את התנאי ואת התאריך שבו בוצע השינוי ליד שינוי אחרון מתחת לכל תנאי.
השלבים הבאים
כדי להתחיל את הגדרת הפרויקט ב-Firebase, אתם יכולים לעיין במאמרים הבאים: מגדירים פרויקט Firebase Remote Config.