Join us for Firebase Summit on November 10, 2021. Tune in to learn how Firebase can help you accelerate app development, release with confidence, and scale with ease. Register

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

  • String
  • Boolean
  • Number
  • JSON

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

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

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

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

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

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

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

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

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

צור קבוצות מבחינה תכנותית

API REST Config מרחוק מספק דרך אוטומטית ליצור ולפרסם קבוצות פרמטר. בהנחה שאתה מכיר את 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. פונקציונליות Equivalent זמין API REST Config מרחוק, כמפורט התייחסות ביטוי מותנה .

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

משתמש בקהל == בחר אחד או יותר מרשימת קהלי Google Analytics שהגדרת לפרויקט שלך.

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

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

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

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

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

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

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

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

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

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

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

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

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

הצעדים הבאים

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