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

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

אלמנטים המשמשים ליצירת תנאים

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

אֵלֵמֶנט תיאור
&&

משמש ליצירת "ו" לוגי של אלמנטים אם משתמשים ביותר מאלמנט אחד עבור תנאי. אם נעשה שימוש באלמנט בתחביר REST ללא ה- && , הרכיב הזה יטופל כתנאי.

הערה: נדרש רווח לפני ואחרי האמפרסנד. לדוגמה: element1 && element2 .

app.build

מוערך ל- TRUE או FALSE על סמך הערך של מספר ה-build של אפליקציה.

הערה: זמין רק במכשירי אפל ואנדרואיד. עבור Apple, השתמש בערך של CFBundleVersion ועבור Android, השתמש בערך של versionCode .

app.version

מוערך ל- TRUE או FALSE על סמך הערך של מספר הגרסה של אפליקציה.

הערה: עבור מכשירי אנדרואיד השתמש בערך של versionName , ועבור מכשירי Apple השתמש בערך של CFBundleShortVersionString .

app.id רכיב המבוסס על מזהה האפליקציה Firebase של האפליקציה
app.audiences רכיב שמעריך TRUE או FALSE על סמך נוכחות או היעדרות של המשתמש בקהל אחד או יותר של Firebase Analytics .
app.userProperty רכיב שמוערך ל- TRUE או FALSE על סמך הערך המספרי או המחרוזת של נכס משתמש של Firebase Analytics .
app.operatingSystemAndVersion

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

הערה: זמין רק עבור אפליקציות אינטרנט.

app.browserAndVersion

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

הערה: זמין רק עבור אפליקציות אינטרנט.

app.firebaseInstallationId אלמנט המבוסס על המזהים של התקנות מכשירים ספציפיים. מוערך ל- TRUE כאשר מזהה ההתקנה תואם לאחד ממזהי ההתקנה שצוינו.
device.country רכיב המבוסס על האזור/המדינה שהמכשיר נמצא בו, תוך שימוש בתקן ISO 3166-1 alpha-2 (לדוגמה, ארה"ב או בריטניה). מוערך ל- TRUE כאשר מדינה תואמת לקוד מדינה צפוי.
device.dateTime רכיב המבוסס על זמן האחזור האחרון שהמכשיר מבצע. משתמש בפורמט תאריך ISO עם אפשרות לציין אזור זמן קבוע; לדוגמה, dateTime('2017-03-22T13:39:44', 'America/Los_Angeles') .
device.language רכיב המבוסס על השפה שנבחרה במכשיר. השפה מיוצגת באמצעות תג IETF Language כגון es-ES, pt-BR או en-US. מוערך ל- TRUE כאשר שפה תואמת לקוד שפה צפוי.
device.os רכיב המבוסס על מערכת ההפעלה המשמשת במכשיר (אפל או אנדרואיד). מוערך ל- TRUE כאשר מערכת ההפעלה של המכשיר היא מהסוג הצפוי.
percent מוערך ל- TRUE בהתבסס על הכללת משתמש באחוזון חלקי שהוקצה אקראית (עם גודל מדגם קטן כמו 0.000001%).

תנאי של רכיב בודד מכיל שלושה שדות:

  1. name מוגדר באופן שרירותי (עד 100 תווים)
  2. ביטוי מותנה המוערך ל- TRUE או FALSE , המורכב מהאלמנטים המוצגים למעלה.
  3. (אופציונלי) tagColor , שיכול להיות " BLUE ", " BROWN ", " DEEP_ORANGE CYAN , " GREEN ", " INDIGO ", " LIME ", " ORANGE ", " PINK ", " PURPLE ", או " TEAL ". הצבע אינו תלוי רישיות, ומשפיע רק על אופן הצגת התנאים במסוף Firebase.

מפעילים נתמכים

לדוגמה, app.build.notContains([123, 456]) מחזיר TRUE אם בניית האפליקציה בפועל היא 123 או 492, אך מחזירה FALSE אם בניית האפליקציה בפועל היא 999. לדוגמה, app.version.notContains([123, 456]) מחזירה TRUE אם גרסת האפליקציה בפועל היא 123 או 492, אך מחזירה FALSE אם גרסת האפליקציה בפועל היא 999.
אֵלֵמֶנט מפעילים נתמכים תיאור
app.audiences .inAtLeastOne([...]) מחזירה TRUE אם הקהל בפועל תואם לפחות שם קהל אחד ברשימה.
לדוגמה:

app.audiences.inAtLeastOne(['Audience 1', 'Audience 2'])

app.audiences .notInAtLeastOne([...]) מחזירה TRUE אם הקהל בפועל אינו תואם לפחות שם קהל אחד ברשימה.
app.audiences .inAll([...]) מחזירה TRUE אם הקהל בפועל הוא חבר בכל שם קהל ברשימה.
app.audiences .notInAll([...]) מחזירה TRUE אם הקהל בפועל אינו חבר באף קהל ברשימה.
app.userProperty < , <= , == , != , >= , > מחזירה TRUE אם מאפיין המשתמש בפועל משווה מספרית לערך שצוין בצורה שתואמת לאופרטור.
app.userProperty .contains([...]) מחזירה TRUE אם אחד מערכי היעד הוא מחרוזת משנה של מאפיין המשתמש בפועל.
app.userProperty .notContains([...]) מחזירה TRUE אם אף אחד מערכי היעד אינו מחרוזת משנה של מאפיין המשתמש בפועל.
app.userProperty .exactlyMatches([...]) מחזירה TRUE אם מאפיין המשתמש בפועל תואם במדויק (תלוי רישיות) לכל אחד מערכי היעד ברשימה.
app.userProperty .matches([...]) מחזירה TRUE אם ביטוי רגולרי יעד כלשהו ברשימה תואם למחרוזת משנה של הערך האמיתי, או לכל הערך. כדי לכפות התאמה של המחרוזת כולה, הקדמת הביטוי הרגולרי ב-"^" וסיומו ב-"$". משתמש בתחביר RE2 .
app.id == מחזירה TRUE אם הערך שצוין תואם לזהות האפליקציה של האפליקציה.
app.build < , <= , == , != , >= , > מחזירה TRUE אם בניית האפליקציה בפועל משווה מספרית לערך שצוין בצורה שתואמת לאופרטור.
app.build .contains([...]) מחזירה TRUE אם אחד מערכי היעד הוא מחרוזת משנה של בניית האפליקציה בפועל - לדוגמה, "a" ו-"bc" הן מחרוזות משנה של "abc".
app.build .notContains([...]) מחזירה TRUE אם אף אחד מערכי היעד אינו מחרוזת משנה של בניית האפליקציה בפועל.
app.build .exactlyMatches([...]) מחזירה TRUE אם בניית האפליקציה בפועל תואמת בדיוק לכל אחד מערכי היעד ברשימה.
app.build .matches([...]) מחזירה TRUE אם ביטוי רגולרי יעד כלשהו ברשימה תואם למחרוזת משנה של הערך האמיתי, או לכל הערך. כדי לכפות התאמה של המחרוזת כולה, הקדמת הביטוי הרגולרי ב-"^" וסיומו ב-"$". משתמש בתחביר RE2 .
app.version < , <= , == , != , >= , > מחזירה TRUE אם גרסת האפליקציה בפועל משתווה מספרית לערך שצוין בצורה שתואמת לאופרטור.
app.version .contains([...]) מחזירה TRUE אם אחד מערכי היעד הוא מחרוזת משנה של גרסת האפליקציה בפועל - לדוגמה, "a" ו-"bc" הן מחרוזות משנה של "abc".
app.version .notContains([...]) מחזירה TRUE אם אף אחד מערכי היעד אינו מחרוזת משנה של גרסת האפליקציה בפועל.
app.version .exactlyMatches([...]) מחזירה TRUE אם גרסת האפליקציה בפועל תואמת בדיוק לכל אחד מערכי היעד ברשימה.
app.version .matches([...]) מחזירה TRUE אם ביטוי רגולרי יעד כלשהו ברשימה תואם למחרוזת משנה של הערך האמיתי, או לכל הערך. כדי לכפות התאמה של המחרוזת כולה, הקדמת הביטוי הרגולרי ב-"^" וסיומו ב-"$". משתמש בתחביר RE2 .
app.operatingSystemAndVersion .inOne([...]) מחזירה TRUE אם מערכת ההפעלה והגרסה תואמות לכל אחד מערכי היעד ברשימה.
לדוגמה:

    app.operatingSystemAndVersion.inOne([operatingSystemName('Macintosh').version.==('10.15')])
    

app.browserAndVersion .inOne([...]) מחזירה TRUE אם הדפדפן והגרסה תואמים לכל אחד מערכי היעד ברשימה.
לדוגמה:

    app.browserAndVersion.inOne([browserName('Chrome').anyVersion])
    

app.firebaseInstallationId in [...] מחזירה TRUE אם מזהה ההתקנה תואם למישהו שצוין ברשימה. שימוש לדוגמה: app.firebaseInstallationId in ['eyJhbGciOiJFUzI1N_iIs5', 'eapzYQai_g8flVQyfKoGs7']
device.country in [...] מחזירה TRUE אם מדינת המכשיר תואמת לאחת שצוינה ברשימה. שימוש לדוגמה: device.country in ['gb', 'us'] . קוד המדינה של המכשיר נקבע באמצעות כתובת ה-IP של המכשיר בבקשה או קוד המדינה שנקבע על ידי Firebase Analytics (אם נתוני Analytics משותפים עם Firebase).
device.dateTime <= , > משווה את הזמן הנוכחי לזמן היעד של המצב ומעריך ל- TRUE או FALSE בהתבסס על האופרטור. שימוש לדוגמה: dateTime < dateTime('2017-03-22T13:39:44') .
device.language in [...] מחזירה TRUE אם אחת מהשפות של האפליקציה תואמת לשפה ברשימה. שימוש לדוגמה: device.language in ['en-UK', 'en-US'] .
device.os == , != מחזירה TRUE אם מערכת ההפעלה של המכשיר משתווה לערך באותו שדה התואם למפעיל.
percent <= , > מחזירה TRUE אם הערך בשדה percent משתווה לערך שהוקצה באקראי התואם לאופרטור.