يمثل RemoteConfig قالب التكوين عن بعد.
يتم تقييم قالب التكوين عن بعد الخاص بالمشروع أثناء عملية جلب كل مثيل للتطبيق.
يتم تحديد القيمة التي تم حلها للمعلمة على النحو التالي:
بالنظر إلى conditional values
التي تشير إلى conditions
true
لمثيل التطبيق، فإن القيمة التي تم حلها للمعلمة هي القيمة الشرطية التي يكون name
هو الأقدم في conditions list
.
بخلاف ذلك، إذا كانت المعلمة تحتوي على default value
، فسيتم تعيين القيمة التي تم حلها على القيمة الافتراضية.
وإلا، فإن المعلمة ليس لها قيمة ويتم حذفها من النتيجة التي يجلبها مثيل التطبيق.
على سبيل المثال، لنفترض أن لدينا معلمة مفتاح fruit
، مع القيمة الافتراضية pear
والخريطة الفرعية للقيمة الشرطية {"is_ios": "apple", "is_in_20_percent": "banana"}
حيث "is_ios"
و "is_20_percent"
هما أسماء الشروط في الترتيب المرتب. قائمة الشروط. سيتم تقييم قيمة fruit
إلى apple
إذا كانت is_ios
صحيحة. بخلاف ذلك، إذا كانت is_in_20_percent
true
، فسيتم تقييم fruit
إلى banana
، وإذا كانت is_ios
و is_in_20_percent
خاطئة، فسيتم تقييم fruit
إلى pear
. إذا لم يتم تحديد قيمة افتراضية، وكانت قيمة is_ios
و is_in_20_percent
خاطئة، فلن يتم إرجاع أي قيمة fruit
من خادم Remote Config إلى العميل.
بمجرد نشر قالب التكوين عن بعد الخاص بالمشروع من خلال استدعاء projects.updateRemoteConfig
الناجح، يمكن للعملاء جلب قيم المعلمات هذه وعرضها للمستخدمين.
تمثيل جيسون |
---|
{ "conditions": [ { object ( |
مجالات | |
---|---|
conditions[] | قائمة الشروط مرتبة تنازليا حسب الأولوية. يجب أن تكون قيم إدخالات |
parameters | تعيين مفاتيح المعلمات لقيمها الافتراضية الاختيارية والقيم الشرطية الاختيارية. كائن يحتوي على قائمة |
version | الإخراج فقط، باستثناء |
parameterGroups | خريطة أسماء مجموعات المعلمات لأوصافها والمعلمات المجمعة. اسم المجموعة قابل للتغيير ولكن يجب أن يكون فريدًا بين المجموعات الموجودة في التكوين. يقتصر الاسم على 256 حرفًا ويهدف إلى أن يكون قابلاً للقراءة بواسطة الإنسان. يُسمح بأي أحرف Unicode. تحتوي المجموعات على قائمة من المعلمات التي تسمح لمستخدمي واجهة برمجة التطبيقات (API) بتجميع المعلمات المرتبطة بنفس الميزة أو السمة معًا لسهولة الوصول التنظيمي. على سبيل المثال، قد تحتوي مجموعة المعلمات التي تحمل الاسم "Search V2" على كائن يحتوي على قائمة |
RemoteConfigCondition
شرط يستهدف مجموعة محددة من المستخدمين. تشكل قائمة هذه الشروط جزءًا من كائن RemoteConfig.
تمثيل جيسون |
---|
{
"name": string,
"expression": string,
"tagColor": enum ( |
مجالات | |
---|---|
name | مطلوب. اسم غير فارغ وفريد لهذا الشرط. |
expression | مطلوب. منطق هذا الشرط. راجع الوثائق المتعلقة بالتعبيرات الشرطية لمعرفة الصيغة المتوقعة لهذا الحقل. |
tagColor | خياري. اللون المرتبط بهذا الشرط لأغراض العرض في Firebase Console. يؤدي عدم تحديد هذه القيمة أو وجود "CONDITION_DISPLAY_COLOR_UNSPECIFIED" إلى قيام وحدة التحكم باختيار لون عشوائي لربطه بالشرط. |
حالة العرض اللون
قائمة الألوان المرتبطة بالشروط لأغراض العرض.
التعدادات | |
---|---|
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
موجودًا حتى يكون للمعلمة أي تأثير.
تمثيل جيسون |
---|
{ "defaultValue": { object ( |
مجالات | |
---|---|
defaultValue | اختياري - القيمة التي سيتم تعيين المعلمة عليها، عندما لا يتم تقييم أي من الشروط المسماة على أنها |
conditionalValues | اختياري - خريطة ( كائن يحتوي على قائمة |
description | خياري. وصف لهذه المعلمة. ويجب أن يكون طوله أقل من أو يساوي 256 حرفًا. قد يحتوي الوصف على أي أحرف Unicode. |
valueType | نوع البيانات لكافة قيم هذه المعلمة في الإصدار الحالي من القالب. القيمة الافتراضية هي |
RemoteConfigParameterValue
يحتوي مورد RemoteConfigParameterValue على القيمة التي قد تحتوي على معلمة.
تمثيل جيسون |
---|
{ // Union field |
مجالات | |
---|---|
قيمة حقل الاتحاد value_option . يتكون RemoteConfigParameterValue إما من سلسلة (قيمة) أو قيمة منطقية (use_in_app_default، تم ضبطه على true إن أمكن). يمكن أن يكون value_option واحدًا فقط مما يلي: | |
value | قيمة السلسلة التي تم تعيين المعلمة عليها. |
useInAppDefault | إذا كان صحيحًا، فسيتم حذف المعلمة من قيم المعلمات التي تم إرجاعها إلى العميل. |
personalizationValue | قيمة ديناميكية خاصة بالمستخدم يتم حسابها عند جلب التكوين. |
قيمة التخصيص
يحتوي على المعلومات اللازمة لجلب قيمة شخصية.
تمثيل جيسون |
---|
{ "personalizationId": string } |
مجالات | |
---|---|
personalizationId | المعرف الذي يمثل تعريف التخصيص. يتم استخدام هذا التعريف لحل القيمة في وقت جلب التكوين. لا ينبغي تعديل هذه القيمة التي أنشأها النظام. |
ParameterValueType
أنواع البيانات المقبولة لقيم المعلمات.
التعدادات | |
---|---|
PARAMETER_VALUE_TYPE_UNSPECIFIED | التقاط الكل لقيم التعداد غير المعروفة. |
STRING | يمثل قيم السلسلة. |
BOOLEAN | يمثل القيم المنطقية ("صحيح" أو "خطأ"). |
NUMBER | يمثل كلا من الأعداد الصحيحة الموجبة والسالبة والقيم العائمة. |
JSON | يمثل قيم JSON. |
RemoteConfigParameterGroup
مجموعة محددة من المعلمات. يتم تجميع المعلمات لأغراض الإدارة فقط ولا يؤثر على جلب قيم المعلمات من جانب العميل.
تمثيل جيسون |
---|
{
"description": string,
"parameters": {
string: {
object ( |
مجالات | |
---|---|
description | خياري. وصف للمجموعة. يجب أن يكون طوله أقل من أو يساوي 256 حرفًا. قد يحتوي الوصف على أي أحرف Unicode. |
parameters | تعيين مفاتيح المعلمات إلى قيمها الافتراضية الاختيارية والقيم الشرطية الاختيارية للمعلمات التي تنتمي إلى هذه المجموعة. تظهر المعلمة مرة واحدة فقط لكل RemoteConfig: تظهر المعلمة غير المجمعة في المستوى الأعلى؛ تظهر المعلمة المنظمة ضمن مجموعة ضمن خريطة المعلمات الخاصة بمجموعتها. كائن يحتوي على قائمة |