RemoteConfig یک الگوی Remote Config را نشان می دهد.
الگوی Remote Config پروژه در طول واکشی هر نمونه برنامه ارزیابی می شود.
مقدار حل شده یک پارامتر به صورت زیر تعیین می شود:
با توجه به conditional values
که به conditions
true
برای نمونه برنامه اشاره میکنند، مقدار حلشده پارامتر، مقدار شرطی است که name
آن قدیمیترین نام در conditions list
است.
در غیر این صورت، اگر پارامتر دارای default value
باشد، مقدار حل شده روی مقدار پیش فرض تنظیم می شود.
در غیر این صورت، پارامتر هیچ مقداری ندارد و از نتیجه ای که نمونه برنامه واکشی می کند حذف می شود.
برای مثال، فرض کنید که fruit
کلید پارامتری داریم، با مقدار پیشفرض pear
و مقدار شرطی، نقشه {"is_ios": "apple", "is_in_20_percent": "banana"}
که در آن "is_ios"
و "is_20_percent"
نامهای شرایط در مرتبشده هستند. لیست شرایط اگر is_ios
درست باشد، ارزش fruit
برای apple
ارزیابی می شود. در غیر این صورت، اگر is_in_20_percent
true
باشد، fruit
به banana
ارزیابی می شود، و اگر is_ios
و is_in_20_percent
هر دو نادرست باشند، fruit
به pear
ارزیابی می شود. اگر مقدار پیشفرض مشخص نشده بود و is_ios
و is_in_20_percent
هر دو نادرست بودند، هیچ مقداری برای fruit
از سرور Remote Config به مشتری بازگردانده نمیشد.
هنگامی که الگوی Remote Config پروژه از طریق یک تماس موفق projects.updateRemoteConfig
منتشر شد، مشتریان می توانند این مقادیر پارامتر را دریافت کرده و به کاربران نمایش دهند.
نمایندگی JSON |
---|
{ "conditions": [ { object ( |
زمینه های | |
---|---|
conditions[] | فهرستی از شرایط به ترتیب نزولی بر اساس اولویت. مقادیر ورودی های |
parameters | نقشه کلیدهای پارامتر به مقادیر پیش فرض اختیاری و مقادیر شرطی اختیاری آنها. یک شی حاوی لیستی از |
version | فقط خروجی، به جز |
parameterGroups | نقشه نام گروه های پارامتر به توضیحات آنها و پارامترهای گروه بندی شده. نام یک گروه قابل تغییر است اما باید در میان گروه های موجود در پیکربندی منحصر به فرد باشد. این نام محدود به 256 کاراکتر است و برای انسان قابل خواندن است. هر کاراکتر یونیکد مجاز است. گروهها فهرستی از پارامترها دارند که به کاربران API اجازه میدهد تا پارامترهایی را که با یک ویژگی یا موضوع مرتبط هستند را برای دسترسی آسان سازمانی با هم گروهبندی کنند. به عنوان مثال، یک گروه پارامتر با نام "Search V2" ممکن است دارای یک شی حاوی لیستی از |
RemoteConfigCondition
شرایطی که گروه خاصی از کاربران را هدف قرار می دهد. لیستی از این شرایط بخشی از یک شی RemoteConfig را تشکیل می دهد.
نمایندگی JSON |
---|
{
"name": string,
"expression": string,
"tagColor": enum ( |
زمینه های | |
---|---|
name | ضروری. نامی غیر خالی و منحصر به فرد از این شرط. |
expression | ضروری. منطق این شرط است. مستندات مربوط به عبارات شرط را برای نحو مورد انتظار این فیلد مشاهده کنید. |
tagColor | اختیاری. رنگ مرتبط با این شرایط برای اهداف نمایش در کنسول Firebase. مشخص نکردن این مقدار یا داشتن "CONDITION_DISPLAY_COLOR_UNSPECIFIED" باعث میشود کنسول یک رنگ دلخواه را برای مرتبط کردن با شرایط انتخاب کند. |
ConditionDisplayColor
فهرست رنگ هایی که برای اهداف نمایش با شرایط مرتبط هستند.
Enums | |
---|---|
CONDITION_DISPLAY_COLOR_UNSPECIFIED | |
BLUE | آبی |
BROWN | رنگ قهوه ای |
CYAN | فیروزه ای |
DEEP_ORANGE | با نام مستعار "نارنجی قرمز" |
GREEN | سبز |
INDIGO | نیل |
LIME | اهک |
ORANGE | نارنجی |
PINK | رنگ صورتی |
PURPLE | رنگ بنفش |
TEAL | آبی رنگ |
RemoteConfigParameter
یک مقدار پارامتر مرتبط با یک کلید پارامتر در google.firebase.remoteconfig.v1.RemoteConfig.parameters
.
حداقل، یک defaultValue
یا یک ورودی conditionalValues
باید وجود داشته باشد تا پارامتر تأثیری داشته باشد.
نمایندگی JSON |
---|
{ "defaultValue": { object ( |
زمینه های | |
---|---|
defaultValue | اختیاری - مقدار برای تنظیم پارامتر، زمانی که هیچ یک از شرایط نامگذاری شده به |
conditionalValues | اختیاری - نقشه ( یک شی حاوی لیستی از |
description | اختیاری. توضیحاتی برای این پارامتر طول آن باید کمتر یا مساوی 256 کاراکتر باشد. یک توضیح ممکن است حاوی هر کاراکتر یونیکد باشد. |
valueType | نوع داده برای همه مقادیر این پارامتر در نسخه فعلی الگو. اگر مشخص نشده باشد، به طور پیش فرض به |
RemoteConfigParameterValue
یک منبع RemoteConfigParameterValue حاوی مقداری است که ممکن است یک پارامتر داشته باشد.
نمایندگی JSON |
---|
{ // Union field |
زمینه های | |
---|---|
فیلد اتحادیه value_option . یک RemoteConfigParameterValue از یک رشته (مقدار) یا یک بولی (use_in_app_default، در صورت وجود روی true تنظیم شده است) تشکیل شده است. value_option تنها می تواند یکی از موارد زیر باشد: | |
value | مقدار رشته ای که پارامتر روی آن تنظیم شده است. |
useInAppDefault | اگر درست باشد، پارامتر از مقادیر پارامترهای بازگردانده شده به مشتری حذف می شود. |
personalizationValue | یک مقدار پویا و مختص کاربر که هنگام واکشی پیکربندی محاسبه میشود. |
PersonalizationValue
حاوی اطلاعات لازم برای واکشی ارزش شخصی است.
نمایندگی JSON |
---|
{ "personalizationId": string } |
زمینه های | |
---|---|
personalizationId | شناسه ای که یک تعریف شخصی سازی را نشان می دهد. این تعریف برای حل مقدار در زمان واکشی پیکربندی استفاده می شود. این مقدار تولید شده توسط سیستم نباید اصلاح شود. |
ParameterValueType
انواع داده های پذیرفته شده برای مقادیر پارامتر.
Enums | |
---|---|
PARAMETER_VALUE_TYPE_UNSPECIFIED | Catch-all برای مقادیر enum ناشناخته. |
STRING | مقادیر رشته را نشان می دهد. |
BOOLEAN | مقادیر بولی ("درست" یا "نادرست") را نشان می دهد. |
NUMBER | هر دو عدد صحیح مثبت و منفی و مقادیر شناور را نشان می دهد. |
JSON | مقادیر JSON را نشان می دهد. |
RemoteConfigParameterGroup
گروهی از پارامترها با نام پارامترهای گروهبندی فقط برای اهداف مدیریتی است و بر واکشی مقادیر پارامتر از سمت مشتری تأثیری ندارد.
نمایندگی JSON |
---|
{
"description": string,
"parameters": {
string: {
object ( |
زمینه های | |
---|---|
description | اختیاری. توضیحاتی برای گروه طول آن باید کمتر یا مساوی 256 کاراکتر باشد. یک توضیح ممکن است حاوی هر کاراکتر یونیکد باشد. |
parameters | نقشه کلیدهای پارامتر به مقادیر پیش فرض اختیاری آنها و مقادیر شرطی اختیاری برای پارامترهایی که به این گروه تعلق دارند. یک پارامتر فقط یک بار در RemoteConfig ظاهر می شود: یک پارامتر گروه بندی نشده در سطح بالا ظاهر می شود. یک پارامتر سازماندهی شده در یک گروه در نقشه پارامترهای گروه آن ظاهر می شود. یک شی حاوی لیستی از |