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

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

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

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

תנאים, כללים וערכים מותנים

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

לדוגמה, פרמטר המגדיר את דף הפתיחה של אפליקציה יכול להציג תמונות שונות על סמך סוג מערכת ההפעלה באמצעות הכלל הפשוט if device_os = Android :

צילום מסך של הפרמטר 'splash_page' במסוף Firebase מציג את ערך ברירת המחדל שלו עבור iOS וערך מותנה עבור Android

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

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

עדיפות ערך פרמטר

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

ערכי פרמטרים בצד השרת נשלפים לפי רשימת העדיפויות הבאה

  1. ראשית, ערכים מותנים מוחלים, אם יש תנאים שמעריכים כ- true עבור מופע אפליקציה נתון. אם מספר תנאים מוערכים כ- true , הראשון (העליון) המוצג בממשק המשתמש של מסוף Firebase מקבל עדיפות, וערכים מותנים המשויכים לתנאי זה מסופקים כאשר אפליקציה שואבת ערכים מה-backend. ניתן לשנות את העדיפות של התנאים על ידי גרירה ושחרור של תנאים בלשונית תנאים.

  2. אם אין ערכים מותנים עם תנאים המוערכים כ- true , ערך ברירת המחדל בצד השרת מסופק כאשר אפליקציה מאחזרת ערכים מה-backend. אם פרמטר לא קיים ב-backend, או אם ערך ברירת המחדל מוגדר ל- Use in-app default , אז לא מסופק ערך עבור פרמטר זה כאשר אפליקציה מאחזרת ערכים.

באפליקציה שלך, ערכי פרמטרים מוחזרים על ידי שיטות get לפי רשימת העדיפויות הבאה

  1. אם ערך הובא מה-backend ולאחר מכן הופעל, האפליקציה משתמשת בערך שאוחזר. ערכי הפרמטרים המופעלים הם קבועים.
  2. אם לא הופעל ערך מהקצה העורפי, או אם ערכים שהובאו מ-Remote Config לא הופעלו, האפליקציה משתמשת בערך ברירת המחדל בתוך האפליקציה.

    למידע נוסף על השגה והגדרת ערכי ברירת מחדל, ראה הורדת ברירות מחדל של תבנית תצורה מרחוק .

  3. אם לא הוגדר ערך ברירת מחדל בתוך האפליקציה, האפליקציה משתמשת בערך סוג סטטי (כגון 0 עבור int ו- false עבור boolean ).

גרפיקה זו מסכמת כיצד ערכי פרמטר מקבלים עדיפות ב-Remote Config Backend, ובאפליקציה שלך:

תרשים המציג את הזרימה המתוארת על ידי הרשימות המסודרות לעיל

סוגי נתונים של ערכי פרמטר

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

הסוגים הנתמכים כעת הם:

  • String
  • Boolean
  • Number
  • JSON

בממשק המשתמש של מסוף Firebase ניתן לבחור את סוג הנתונים מתוך תפריט נפתח שליד מפתח הפרמטר. ב-REST ניתן להגדיר סוגי API באמצעות השדה value_type בתוך אובייקט הפרמטר.

קבוצות פרמטרים

Config מרחוק מאפשר לך לקבץ פרמטרים יחדיו ליצירת ממשק משתמש מאורגן יותר ומודל מנטלי.

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

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

  • ניתן לכלול פרמטרים רק בקבוצה אחת בכל עת, ומפתח פרמטר עדיין חייב להיות ייחודי בכל הפרמטרים.
  • שמות קבוצות פרמטרים מוגבלים ל-256 תווים.
  • אם אתה משתמש גם ב-REST API וגם במסוף Firebase, ודא שכל הגיון של REST API מעודכן כדי לטפל בקבוצות פרמטרים בפרסום.

צור או שנה קבוצות פרמטרים באמצעות מסוף Firebase

אתה יכול לקבץ פרמטרים בכרטיסייה פרמטרים של מסוף Firebase. כדי ליצור או לשנות קבוצה:

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

צור קבוצות באופן פרוגרמטי

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

  1. אחזר את התבנית הנוכחית
  2. הוסף אובייקטי JSON כדי לייצג את קבוצות הפרמטרים שלך
  3. פרסם את קבוצות הפרמטרים באמצעות בקשת 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 currently pumpkin spice season."
        }
      }
    }
  }
}

סוגי כללי תנאי

סוגי הכללים הבאים נתמכים במסוף Firebase. פונקציונליות מקבילה זמינה ב-Remote Config REST API, כמפורט בהפניה לביטוי מותנה .

סוג כלל מפעיל(ים) ערכים הערה
אפליקציה == בחר מתוך רשימה של מזהי אפליקציות עבור אפליקציות המשויכות לפרויקט Firebase שלך. כשאתה מוסיף אפליקציה ל-Firebase, אתה מזין מזהה חבילה או שם חבילה של Android שמגדיר תכונה שנחשפת כמזהה אפליקציה בכללי תצורה מרחוק.

השתמש בתכונה זו באופן הבא:
  • עבור פלטפורמות אפל: השתמש ב- CFBundleIdentifier של האפליקציה. אתה יכול למצוא את מזהה החבילה בכרטיסייה כללי עבור היעד העיקרי של האפליקציה שלך ב-Xcode.
  • עבור אנדרואיד: השתמש ב- applicationId של האפליקציה . אתה יכול למצוא את applicationId בקובץ build.gradle ברמת האפליקציה.
גרסת האפליקציה עבור ערכי מחרוזת:
מתאים בדיוק,
מכיל,
לא מכיל,
הבעה רגילה

עבור ערכים מספריים:
=, ≠, >, ≥, <, ≤

ציין את הגירסאות של האפליקציה שלך למיקוד.

לפני השימוש בכלל זה, עליך להשתמש בכלל App ID כדי לבחור אפליקציית Android/Apple המשויכת לפרויקט Firebase שלך.

עבור פלטפורמות אפל: השתמש ב- CFBundleShortVersionString של האפליקציה.

הערה: ודא שאפליקציית Apple שלך ​​משתמשת ב-Firebase Apple Platforms SDK בגרסה 6.24.0 ומעלה, מכיוון ש-CFBundleShortVersionString לא נשלח בגרסאות קודמות (ראה הערות גרסה ).

עבור אנדרואיד: השתמש בגרסה של האפליקציה בשם .

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

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

לבנות מספר עבור ערכי מחרוזת:
מתאים בדיוק,
מכיל,
לא מכיל,
הבעה רגילה

עבור ערכים מספריים:
=, ≠, >, ≥, <, ≤

ציין את המבנה/ים של האפליקציה שלך למיקוד.

לפני השימוש בכלל זה, עליך להשתמש בכלל App ID כדי לבחור אפליקציית Apple או Android המשויכת לפרויקט Firebase שלך.

מפעיל זה זמין עבור אפליקציות אפל ואנדרואיד בלבד. זה מתאים ל- CFBundleVersion של האפליקציה עבור Apple ו- versionCode עבור אנדרואיד. השוואות מחרוזות עבור כלל זה הן תלויות רישיות.

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

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

פּלַטפוֹרמָה == iOS
דְמוּי אָדָם
אינטרנט
מערכת הפעלה ==

ציין את מערכות ההפעלה למיקוד.

לפני השימוש בכלל זה, עליך להשתמש בכלל App ID כדי לבחור אפליקציית אינטרנט המשויכת לפרויקט Firebase שלך.

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

ציין את הדפדפנים למיקוד.

לפני השימוש בכלל זה, עליך להשתמש בכלל App ID כדי לבחור אפליקציית אינטרנט המשויכת לפרויקט Firebase שלך.

כלל זה מוערך כ- true עבור מופע נתון של אפליקציית אינטרנט אם הדפדפן והגרסה שלו תואמים לערך יעד ברשימה שצוינה.
קטגוריית מכשיר זה לא נייד כלל זה מעריך אם המכשיר הניגש לאפליקציית האינטרנט שלך הוא נייד או לא נייד (שולחן עבודה או קונסולה). סוג כלל זה זמין רק עבור אפליקציות אינטרנט.
שפות נמצא ב בחר שפה אחת או יותר. כלל זה מוערך כ- true עבור מופע נתון של אפליקציה אם מופע האפליקציה מותקן במכשיר המשתמש באחת מהשפות המפורטות.
מדינה/אזור נמצא ב בחר אזור או ארץ אחד או יותר. כלל זה מוערך כ- true עבור מופע נתון של אפליקציה אם המופע נמצא באחד מהאזורים או המדינות הרשומים. קוד המדינה של המכשיר נקבע באמצעות כתובת ה-IP של המכשיר בבקשה או קוד המדינה שנקבע על ידי Firebase Analytics (אם נתוני Analytics משותפים עם Firebase).
קהלי משתמשים כולל לפחות אחד בחר אחד או יותר מתוך רשימה של קהלים של Google Analytics שהגדרת עבור הפרויקט שלך.

כלל זה מחייב כלל App ID כדי לבחור אפליקציה המשויכת לפרויקט Firebase שלך.

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

נכס משתמש עבור ערכי מחרוזת:
מכיל,
לא מכיל,
מתאים בדיוק,
הבעה רגילה

עבור ערכים מספריים:
=, ≠, >, ≥, <, ≤

הערה: בלקוח, אתה יכול להגדיר רק ערכי מחרוזת עבור מאפייני משתמש. עבור תנאים המשתמשים באופרטורים מספריים, Config מרחוק ממירה את הערך של מאפיין המשתמש המתאים למספר שלם/צף.
בחר מתוך רשימה של נכסי משתמש זמינים של Google Analytics. כדי ללמוד כיצד אתה יכול להשתמש במאפייני משתמש כדי להתאים אישית את האפליקציה שלך עבור פלחים ספציפיים מאוד של בסיס המשתמשים שלך, ראה תצורה מרחוק ומאפייני משתמש .

למידע נוסף על מאפייני משתמש, עיין במדריכים הבאים:

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

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

הערה: מאפייני משתמש שנאספו אוטומטית אינם זמינים כעת בעת יצירת תנאי תצורה מרחוק.
משתמש באחוזון אקראי <=, > 0-100

השתמש בשדה זה כדי להחיל שינוי על מדגם אקראי של מופעי אפליקציה (עם גודל מדגם קטן כמו .0001%), באמצעות האופרטורים <= ו- > כדי לפלח משתמשים (מופעי אפליקציה) לקבוצות.

כל מופע אפליקציה ממופה בהתמדה למספר שלם או חלקי אקראי, לפי מפתח שהוגדר באותו פרויקט. כלל ישתמש במפתח ברירת המחדל (מוצג כ- DEF במסוף Firebase), אלא אם תבחר או תיצור מפתח אחר. אתה יכול להחזיר כלל לשימוש במפתח ברירת המחדל על ידי ניקוי השדה בצע אקראי משתמשים באמצעות מפתח זה . אתה יכול להשתמש במפתח יחיד על פני כללים כדי לטפל באופן עקבי באותם מופעי אפליקציה בטווחי אחוזים נתונים. לחלופין, תוכל לבחור קבוצה חדשה שהוקצתה באופן אקראי של מופעי אפליקציות עבור טווח אחוז נתון על ידי יצירת מפתח חדש.

לדוגמה, כדי ליצור שני תנאים קשורים שכל אחד מהם חל על 5% שאינם חופפים ממשתמשי האפליקציה, יכול להיות שתנאי אחד יכלול כלל <= 5% , ותנאי אחר יכלול גם כלל > 5% וגם <= כלל 10% . כדי לאפשר לחלק מהמשתמשים להופיע באופן אקראי בשתי הקבוצות, השתמש במפתחות שונים לכללים בכל תנאי.

פלח מיובא נמצא ב בחר פלח מיובא אחד או יותר. כלל זה מחייב הגדרת פלחים מיובאים מותאמים אישית .
תאריך שעה לפני, אחרי תאריך ושעה מוגדרים, בין אם באזור הזמן של המכשיר או באזור זמן מוגדר כגון "(GMT+11) זמן סידני." משווה את השעה הנוכחית לזמן אחזור המכשיר.
מזהה התקנה נמצא ב ציין מזהה התקנה אחד או יותר (עד 50) למיקוד. כלל זה מוערך כ- true עבור התקנה נתונה אם מזהה ההתקנה נמצא ברשימת הערכים המופרדים בפסיקים.

כדי ללמוד כיצד ניתן לקבל מזהי התקנה, ראה אחזור מזהי לקוח .

חיפוש פרמטרים ותנאים

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

מגבלות על פרמטרים ותנאים

בתוך פרויקט Firebase, אתה יכול לקבל עד 2000 פרמטרים ועד 500 תנאים. מפתחות פרמטר יכולים להיות באורך של עד 256 תווים, חייבים להתחיל בקו תחתון או בתו באנגלית (AZ, az), ועשויים לכלול גם מספרים. האורך הכולל של מחרוזות ערכי פרמטרים בתוך פרויקט אינו יכול לעלות על 1,000,000 תווים.

צפייה בשינויים בפרמטרים ובתנאים

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

  • הצג את שם המשתמש ששינה לאחרונה את הפרמטר או התנאי.

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

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

עדכוני פרמטרים

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

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

  • כדי למיין בסדר עולה או יורד לפי תאריך פרסום, לחץ על תווית העמודה שפורסם לאחרונה .

עדכוני מצב

בדף תנאי תצורה מרחוק, אתה יכול לראות את המשתמש האחרון ששינה את התנאי ואת התאריך שבו שינה אותו לצד השינוי האחרון מתחת לכל תנאי.

הצעדים הבאים

כדי להתחיל להגדיר את פרויקט Firebase שלך, ראה הגדרת פרויקט תצורה מרחוק של Firebase .

,

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

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

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

תנאים, כללים וערכים מותנים

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

לדוגמה, פרמטר המגדיר את דף הפתיחה של אפליקציה יכול להציג תמונות שונות על סמך סוג מערכת ההפעלה באמצעות הכלל הפשוט if device_os = Android :

צילום מסך של הפרמטר 'splash_page' במסוף Firebase מציג את ערך ברירת המחדל שלו עבור iOS וערך מותנה עבור Android

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

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

עדיפות ערך פרמטר

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

ערכי פרמטרים בצד השרת נשלפים לפי רשימת העדיפויות הבאה

  1. ראשית, ערכים מותנים מוחלים, אם יש תנאים שמעריכים כ- true עבור מופע אפליקציה נתון. אם מספר תנאים מוערכים כ- true , הראשון (העליון) המוצג בממשק המשתמש של מסוף Firebase מקבל עדיפות, וערכים מותנים המשויכים לתנאי זה מסופקים כאשר אפליקציה שואבת ערכים מה-backend. ניתן לשנות את העדיפות של התנאים על ידי גרירה ושחרור של תנאים בלשונית תנאים.

  2. אם אין ערכים מותנים עם תנאים המוערכים כ- true , ערך ברירת המחדל בצד השרת מסופק כאשר אפליקציה מאחזרת ערכים מה-backend. אם פרמטר לא קיים ב-backend, או אם ערך ברירת המחדל מוגדר ל- Use in-app default , אז לא מסופק ערך עבור פרמטר זה כאשר אפליקציה מאחזרת ערכים.

באפליקציה שלך, ערכי פרמטרים מוחזרים על ידי שיטות get לפי רשימת העדיפויות הבאה

  1. אם ערך הובא מה-backend ולאחר מכן הופעל, האפליקציה משתמשת בערך שאוחזר. ערכי הפרמטרים המופעלים הם קבועים.
  2. אם לא הופעל ערך מהקצה העורפי, או אם ערכים שהובאו מ-Remote Config לא הופעלו, האפליקציה משתמשת בערך ברירת המחדל בתוך האפליקציה.

    למידע נוסף על השגה והגדרת ערכי ברירת מחדל, ראה הורדת ברירות מחדל של תבנית תצורה מרחוק .

  3. אם לא הוגדר ערך ברירת מחדל בתוך האפליקציה, האפליקציה משתמשת בערך סוג סטטי (כגון 0 עבור int ו- false עבור boolean ).

גרפיקה זו מסכמת כיצד ערכי פרמטר מקבלים עדיפות ב-Remote Config Backend, ובאפליקציה שלך:

תרשים המציג את הזרימה המתוארת על ידי הרשימות המסודרות לעיל

סוגי נתונים של ערכי פרמטר

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

הסוגים הנתמכים כעת הם:

  • String
  • Boolean
  • Number
  • JSON

בממשק המשתמש של מסוף Firebase ניתן לבחור את סוג הנתונים מתוך תפריט נפתח שליד מפתח הפרמטר. ב-REST ניתן להגדיר סוגי API באמצעות השדה value_type בתוך אובייקט הפרמטר.

קבוצות פרמטרים

Config מרחוק מאפשר לך לקבץ פרמטרים יחדיו ליצירת ממשק משתמש מאורגן יותר ומודל מנטלי.

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

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

  • ניתן לכלול פרמטרים רק בקבוצה אחת בכל עת, ומפתח פרמטר עדיין חייב להיות ייחודי בכל הפרמטרים.
  • שמות קבוצות פרמטרים מוגבלים ל-256 תווים.
  • אם אתה משתמש גם ב-REST API וגם במסוף Firebase, ודא שכל הגיון של REST API מעודכן כדי לטפל בקבוצות פרמטרים בפרסום.

צור או שנה קבוצות פרמטרים באמצעות מסוף Firebase

אתה יכול לקבץ פרמטרים בכרטיסייה פרמטרים של מסוף Firebase. כדי ליצור או לשנות קבוצה:

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

צור קבוצות באופן פרוגרמטי

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

  1. אחזר את התבנית הנוכחית
  2. הוסף אובייקטי JSON כדי לייצג את קבוצות הפרמטרים שלך
  3. פרסם את קבוצות הפרמטרים באמצעות בקשת 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 currently pumpkin spice season."
        }
      }
    }
  }
}

סוגי כללי תנאי

סוגי הכללים הבאים נתמכים במסוף Firebase. פונקציונליות מקבילה זמינה ב-Remote Config REST API, כמפורט בהפניה לביטוי מותנה .

סוג כלל מפעיל(ים) ערכים הערה
אפליקציה == בחר מתוך רשימה של מזהי אפליקציות עבור אפליקציות המשויכות לפרויקט Firebase שלך. כשאתה מוסיף אפליקציה ל-Firebase, אתה מזין מזהה חבילה או שם חבילה של Android שמגדיר תכונה שנחשפת כמזהה אפליקציה בכללי תצורה מרחוק.

השתמש בתכונה זו באופן הבא:
  • עבור פלטפורמות אפל: השתמש ב- CFBundleIdentifier של האפליקציה. אתה יכול למצוא את מזהה החבילה בכרטיסייה כללי עבור היעד העיקרי של האפליקציה שלך ב-Xcode.
  • עבור אנדרואיד: השתמש ב- applicationId של האפליקציה . אתה יכול למצוא את applicationId בקובץ build.gradle ברמת האפליקציה.
גרסת האפליקציה עבור ערכי מחרוזת:
מתאים בדיוק,
מכיל,
לא מכיל,
הבעה רגילה

עבור ערכים מספריים:
=, ≠, >, ≥, <, ≤

ציין את הגירסאות של האפליקציה שלך למיקוד.

לפני השימוש בכלל זה, עליך להשתמש בכלל App ID כדי לבחור אפליקציית Android/Apple המשויכת לפרויקט Firebase שלך.

עבור פלטפורמות אפל: השתמש ב- CFBundleShortVersionString של האפליקציה.

הערה: ודא שאפליקציית Apple שלך ​​משתמשת ב-Firebase Apple Platforms SDK בגרסה 6.24.0 ומעלה, מכיוון ש-CFBundleShortVersionString לא נשלח בגרסאות קודמות (ראה הערות גרסה ).

עבור אנדרואיד: השתמש בגרסה של האפליקציה בשם .

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

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

לבנות מספר עבור ערכי מחרוזת:
מתאים בדיוק,
מכיל,
לא מכיל,
הבעה רגילה

עבור ערכים מספריים:
=, ≠, >, ≥, <, ≤

ציין את המבנה/ים של האפליקציה שלך למיקוד.

לפני השימוש בכלל זה, עליך להשתמש בכלל App ID כדי לבחור אפליקציית Apple או Android המשויכת לפרויקט Firebase שלך.

מפעיל זה זמין עבור אפליקציות אפל ואנדרואיד בלבד. זה מתאים ל- CFBundleVersion של האפליקציה עבור Apple ו- versionCode עבור אנדרואיד. השוואות מחרוזות עבור כלל זה הן תלויות רישיות.

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

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

פּלַטפוֹרמָה == iOS
דְמוּי אָדָם
אינטרנט
מערכת הפעלה ==

ציין את מערכות ההפעלה למיקוד.

לפני השימוש בכלל זה, עליך להשתמש בכלל App ID כדי לבחור אפליקציית אינטרנט המשויכת לפרויקט Firebase שלך.

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

ציין את הדפדפנים למיקוד.

לפני השימוש בכלל זה, עליך להשתמש בכלל App ID כדי לבחור אפליקציית אינטרנט המשויכת לפרויקט Firebase שלך.

כלל זה מוערך כ- true עבור מופע נתון של אפליקציית אינטרנט אם הדפדפן והגרסה שלו תואמים לערך יעד ברשימה שצוינה.
קטגוריית מכשיר זה לא נייד כלל זה מעריך אם המכשיר הניגש לאפליקציית האינטרנט שלך הוא נייד או לא נייד (שולחן עבודה או קונסולה). סוג כלל זה זמין רק עבור אפליקציות אינטרנט.
שפות נמצא ב בחר שפה אחת או יותר. כלל זה מוערך כ- true עבור מופע נתון של אפליקציה אם מופע האפליקציה מותקן במכשיר המשתמש באחת מהשפות המפורטות.
מדינה/אזור נמצא ב בחר אזור או ארץ אחד או יותר. כלל זה מוערך כ- true עבור מופע נתון של אפליקציה אם המופע נמצא באחד מהאזורים או המדינות הרשומים. קוד המדינה של המכשיר נקבע באמצעות כתובת ה-IP של המכשיר בבקשה או קוד המדינה שנקבע על ידי Firebase Analytics (אם נתוני Analytics משותפים עם Firebase).
קהלי משתמשים כולל לפחות אחד בחר אחד או יותר מתוך רשימה של קהלים של Google Analytics שהגדרת עבור הפרויקט שלך.

כלל זה מחייב כלל App ID כדי לבחור אפליקציה המשויכת לפרויקט Firebase שלך.

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

נכס משתמש עבור ערכי מחרוזת:
מכיל,
לא מכיל,
מתאים בדיוק,
הבעה רגילה

עבור ערכים מספריים:
=, ≠, >, ≥, <, ≤

הערה: בלקוח, אתה יכול להגדיר רק ערכי מחרוזת עבור מאפייני משתמש. עבור תנאים המשתמשים באופרטורים מספריים, Config מרחוק ממירה את הערך של מאפיין המשתמש המתאים למספר שלם/צף.
בחר מתוך רשימה של נכסי משתמש זמינים של Google Analytics. כדי ללמוד כיצד אתה יכול להשתמש במאפייני משתמש כדי להתאים אישית את האפליקציה שלך עבור פלחים ספציפיים מאוד של בסיס המשתמשים שלך, ראה תצורה מרחוק ומאפייני משתמש .

למידע נוסף על מאפייני משתמש, עיין במדריכים הבאים:

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

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

הערה: מאפייני משתמש שנאספו אוטומטית אינם זמינים כעת בעת יצירת תנאי תצורה מרחוק.
משתמש באחוזון אקראי <=, > 0-100

השתמש בשדה זה כדי להחיל שינוי על מדגם אקראי של מופעי אפליקציה (עם גודל מדגם קטן כמו .0001%), באמצעות האופרטורים <= ו- > כדי לפלח משתמשים (מופעי אפליקציה) לקבוצות.

כל מופע אפליקציה ממופה בהתמדה למספר שלם או חלקי אקראי, לפי מפתח שהוגדר באותו פרויקט. כלל ישתמש במפתח ברירת המחדל (מוצג כ- DEF במסוף Firebase), אלא אם תבחר או תיצור מפתח אחר. אתה יכול להחזיר כלל לשימוש במפתח ברירת המחדל על ידי ניקוי השדה בצע אקראי משתמשים באמצעות מפתח זה . אתה יכול להשתמש במפתח יחיד על פני כללים כדי לטפל באופן עקבי באותם מופעי אפליקציה בטווחי אחוזים נתונים. לחלופין, תוכל לבחור קבוצה חדשה שהוקצתה באופן אקראי של מופעי אפליקציות עבור טווח אחוז נתון על ידי יצירת מפתח חדש.

לדוגמה, כדי ליצור שני תנאים קשורים שכל אחד מהם חל על 5% שאינם חופפים ממשתמשי האפליקציה, יכול להיות שתנאי אחד יכלול כלל <= 5% , ותנאי אחר יכלול גם כלל > 5% וגם <= כלל 10% . כדי לאפשר לחלק מהמשתמשים להופיע באופן אקראי בשתי הקבוצות, השתמש במפתחות שונים לכללים בכל תנאי.

פלח מיובא נמצא ב בחר פלח מיובא אחד או יותר. כלל זה מחייב הגדרת פלחים מיובאים מותאמים אישית .
תאריך שעה לפני, אחרי תאריך ושעה מוגדרים, בין אם באזור הזמן של המכשיר או באזור זמן מוגדר כגון "(GMT+11) זמן סידני." משווה את השעה הנוכחית לזמן אחזור המכשיר.
מזהה התקנה נמצא ב ציין מזהה התקנה אחד או יותר (עד 50) למיקוד. This rule evaluates to true for a given installation if that installation's ID is in the comma-separated list of values.

To learn how you can get installation IDs, see Retrieve client identifiers .

Searching parameters and conditions

You can search your project's parameter keys, parameter values, and conditions from the Firebase console using the search box at the top of the Remote Config Parameters tab.

Limits on parameters and conditions

Within a Firebase project, you can have up to 2000 parameters, and up to 500 conditions. Parameter keys can be up to 256 characters long, must start with an underscore or English letter character (AZ, az), and may also include numbers. The total length of parameter value strings within a project cannot exceed 1,000,000 characters.

Viewing changes to parameters and conditions

You can view the latest changes to your Remote Config templates from the Firebase console . For each individual parameter and condition, you can:

  • View the name of the user who last modified the parameter or condition.

  • If the change occurred within the same day, view the number of minutes or hours that have elapsed since the change was published to the active Remote Config template.

  • If the change occurred one or more days in the past, view the date when the change was published to the active Remote Config template.

Parameter updates

On the Remote Config Parameters page, the Last published column shows the last user who modified each parameter and the last publish date for the change:

  • To view change metadata for grouped parameters, expand the parameter group.

  • To sort in ascending or descending order by publish date, click the Last published column label.

Condition updates

On the Remote Config Conditions page, you can see the last user who modified the condition and the date they modified it next to Last modified beneath each condition.

הצעדים הבאים

To get started configuring your Firebase project, see Set up a Firebase Remote Config Project .