Catch up on everthing we announced at this year's Firebase Summit. Learn more

پارامترها و شرایط پیکربندی از راه دور

هنگام استفاده از فایربیس کنسول یا از راه دور رابط های برنامه کاربردی باطن پیکربندی ، شما یک یا چند پارامتر (جفت کلید-مقدار) تعریف و ارائه در برنامه مقادیر پیش فرض برای این پارامترها. می توانید با تعریف مقادیر پارامتر سمت سرور، مقادیر پیش فرض درون برنامه را لغو کنید. کلیدهای پارامتر و مقادیر پارامتر رشته‌ای هستند، اما وقتی از این مقادیر در برنامه خود استفاده می‌کنید، مقادیر پارامتر را می‌توان به‌عنوان انواع دیگر داده ارسال کرد.

با استفاده از فایربیس کنسول یا از راه دور API REST پیکربندی ، شما می توانید مقادیر پیش فرض جدید برای پارامترهای خود را، و همچنین به عنوان ارزش های شرطی که به گروه های هدف از نمونه برنامه های استفاده می شود. هر بار که پیکربندی خود را در کنسول Firebase به روز می کنید، Firebase نسخه جدیدی از الگوی Remote Config شما را ایجاد و منتشر می کند. نسخه قبلی ذخیره شده است و به شما این امکان را می دهد تا در صورت نیاز آن را بازیابی یا برگردانید. این عملیات از طریق REST API نیز در دسترس شما هستند.

این راهنما پارامترها، شرایط، قوانین، مقادیر شرطی و نحوه اولویت بندی مقادیر پارامترهای مختلف در سرور Remote Config و در برنامه شما را توضیح می دهد. همچنین جزئیات مربوط به انواع قوانین مورد استفاده برای ایجاد شرایط را ارائه می دهد.

شرایط، قوانین، و مقادیر شرطی

یک شرط برای هدف قرار دادن گروهی از نمونه های برنامه استفاده می شود. شرایط هستند تا از یک یا چند قوانینی است که همه باید برای ارزیابی ساخته شده true برای شرایط برای ارزیابی به true برای یک نمونه برنامه داده شده است. اگر مقدار برای یک قانون تعریف نشده باشد (به عنوان مثال، زمانی که هیچ ارزش در دسترس است)، که حکومت خواهد برای ارزیابی false .

برای مثال، یک پارامتر است که صفحه چلپ چلوپ برنامه را تعریف می کند می تواند تصاویر مختلف بر اساس نوع سیستم عامل با استفاده از قانون ساده را نمایش if device_os = Android :

تصویربرداری از صفحه پارامتر "splash_page" در کنسول Firebase که مقدار پیش‌فرض آن را برای iOS و مقدار شرطی آن را برای Android نشان می‌دهد.

یا، یک شرایط زمانی می تواند مورد استفاده برای کنترل زمانی که برنامه شما نمایش آیتم های ویژه تبلیغاتی.

یک پارامتر می تواند چندین مقدار شرطی داشته باشد که از شرایط مختلف استفاده می کند و پارامترها می توانند شرایط را در یک پروژه به اشتراک بگذارند. در تب پارامترهای از فایربیس کنسول، شما می توانید درصد واکشی برای ارزش شرطی هر پارامتر را مشاهده کنید. این معیار، درصد درخواست‌هایی را در 24 ساعت گذشته نشان می‌دهد که هر مقدار را دریافت کرده‌اند.

اولویت مقدار پارامتر

یک پارامتر ممکن است چندین مقدار شرطی مرتبط با آن داشته باشد. قوانین زیر تعیین می کند که کدام مقدار از سرور پیکربندی از راه دور واکشی می شود و کدام مقدار در یک نمونه برنامه خاص در یک نقطه خاص از زمان استفاده می شود:

مقادیر پارامتر سمت سرور طبق لیست اولویت زیر واکشی می شوند

  1. نخست، ارزش شرطی اعمال، در صورت وجود شرایطی که ارزیابی به true برای یک نمونه برنامه داده شده است. اگر شرایط متعدد ارزیابی true ، اولین (بالا) نشان داده شده در فایربیس کنسول UI تقدم، و ارزش مشروط مرتبط با آن شرایط زمانی که یک برنامه را بازخوانی ارزش از باطن ارائه شده است. شما می توانید اولویت شرایط با کشیدن و رها شرایط در برگه شرایط را تغییر دهید.

  2. اگر هیچ ارزش شرطی با شرایطی که برای ارزیابی وجود دارد true ، مقدار پیش فرض در سمت سرور ارائه شده است زمانی که یک برنامه را بازخوانی ارزش از باطن. اگر یک پارامتر در باطن وجود ندارد، یا اگر مقدار پیش فرض برای استفاده از مجموعه در برنامه پیش فرض، پس هیچ مقداری برای آن پارامتر ارائه زمانی که یک برنامه را بازخوانی ارزش.

در برنامه شما، مقادیر پارامتر توسط بازگشت get روش با توجه به لیست اولویت زیر

  1. اگر مقداری از Backend واکشی شده و سپس فعال شده باشد، برنامه از مقدار واکشی شده استفاده می کند. مقادیر پارامتر فعال شده پایدار هستند.
  2. اگر هیچ مقداری از پشتیبان واکشی نشده باشد، یا اگر مقادیر دریافت شده از باطن Remote Config فعال نشده باشد، برنامه از مقدار پیش‌فرض درون برنامه استفاده می‌کند.
  3. اگر بدون در برنامه مقدار پیش فرض تعیین شده است، این برنامه با استفاده از یک مقدار از نوع استاتیک (مانند 0 برای int و false برای boolean ).

این نمودار نحوه اولویت بندی مقادیر پارامترها در باطن Remote Config و در برنامه شما را خلاصه می کند:

نموداری که جریان توصیف شده توسط لیست های مرتب شده در بالا را نشان می دهد

انواع داده های مقدار پارامتر

Remote Config به شما امکان می دهد یک نوع داده را برای هر پارامتر انتخاب کنید، و تمام مقادیر سمت سرور را در برابر آن نوع قبل از به روز رسانی الگو تأیید می کند. نوع داده ذخیره شده است و در بازگشت getRemoteConfig درخواست.

انواع پشتیبانی شده در حال حاضر عبارتند از:

  • String
  • Boolean
  • Number
  • JSON

در رابط کاربری کنسول Firebase، نوع داده را می توان از یک منوی کشویی در کنار کلید پارامتر انتخاب کرد. در بقیه انواع API را می توان با استفاده از مجموعه ای value_type زمینه در شی پارامتر.

گروه های پارامتر

Remote Config به شما امکان می دهد پارامترها را با هم گروه بندی کنید تا یک رابط کاربری و مدل ذهنی سازمان یافته تر داشته باشید.

به عنوان مثال، فرض کنید باید سه نوع مختلف احراز هویت را فعال یا غیرفعال کنید در حالی که یک ویژگی ورود جدید را ارائه می کنید. با Remote Config، می توانید سه پارامتر را ایجاد کنید تا انواع را به دلخواه فعال کنید، و سپس آنها را در گروهی به نام "ورود جدید" سازماندهی کنید، بدون نیاز به اضافه کردن پیشوندها یا مرتب سازی خاص.

می توانید گروه های پارامتر را با استفاده از کنسول Firebase یا Remote Config REST API ایجاد کنید. هر گروه پارامتری که ایجاد می کنید یک نام منحصر به فرد در قالب Remote Config شما دارد. هنگام ایجاد گروه های پارامتر، به خاطر داشته باشید:

  • پارامترها را می توان تنها در یک گروه در هر زمان گنجاند و یک کلید پارامتر باید همچنان در همه پارامترها منحصر به فرد باشد.
  • نام گروه پارامتر به 256 کاراکتر محدود شده است.
  • اگر از REST API و کنسول Firebase استفاده می‌کنید، مطمئن شوید که منطق REST API برای کنترل گروه‌های پارامتر در انتشار به‌روزرسانی شده است.

گروه های پارامتر را با استفاده از کنسول Firebase ایجاد یا تغییر دهید

شما می توانید پارامترهای گروه در پارامترهای تب از کنسول فایربیس. برای ایجاد یا تغییر یک گروه:

  1. انتخاب گروه مدیریت.
  2. چک باکس برای پارامترهای انتخاب شما می خواهید برای اضافه کردن و انتقال به گروه انتخاب کنید.
  3. انتخاب کنید یک گروه موجود، و یا ایجاد یک گروه جدید با وارد کردن یک نام و شرح و انتخاب ایجاد گروه جدید. بعد از اینکه یک گروه نجات، آن را در دسترس با استفاده از دکمه انتشار تغییرات منتشر شده است.

ایجاد گروه ها به صورت برنامه ای

از راه دور API REST پیکربندی راه خودکار برای ایجاد و انتشار گروه پارامتر فراهم می کند. با فرض اینکه با 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 پشتیبانی می شوند. قابلیت معادل در از راه دور API REST پیکربندی در دسترس است، همانطور که در جزئیات مرجع عبارت شرطی .

نوع قانون اپراتور(های) ارزش های) توجه داشته باشید
برنامه == از لیستی از شناسه های برنامه برای برنامه های مرتبط با پروژه Firebase خود انتخاب کنید. هنگامی که شما یک برنامه اضافه کنید به فایربیس، شما یک ID نرم افزاری و یا نام بسته آندروید است که یک ویژگی است که به عنوان شناسه برنامه در قوانین پیکربندی از راه دور در معرض تعریف را وارد کنید.

از این ویژگی به صورت زیر استفاده کنید:
  • برای سیستم عامل های اپل: استفاده از برنامه CFBundleIdentifier . شما می توانید بسته نرم افزاری شناسه در برگه General برای هدف اصلی برنامه خود را در Xcode متعلق پیدا
  • برای آندروید: با استفاده از برنامه applicationId . شما می توانید پیدا applicationId در سطح برنامه های خود را build.gradle فایل.
نسخه برنامه برای مقادیر رشته:
دقیقا مطابقت دارد
حاوی،
شامل نمی شود،
عبارت منظم

برای مقادیر عددی:
=، ≠، >، ≥، <، ≤

نسخه(های) برنامه خود را برای هدف گذاری مشخص کنید.

قبل از استفاده از این قانون، شما باید یک حکومت شناسه برنامه برای انتخاب یک برنامه / اپل Android مرتبط با پروژه Firebase خود استفاده کنید.

برای سیستم عامل های اپل: استفاده از برنامه CFBundleShortVersionString .

توجه: مطمئن شوید که برنامه های اپل خود را با استفاده از سیستم عامل اپل فایربیس SDK نسخه 6.24.0 یا بالاتر، به عنوان CFBundleShortVersionString است که در نسخه های قبلی ارسال شده است، (نگاه کنید به نکات انتشار ).

برای آندروید: با استفاده از برنامه نسخه موجود .

مقایسه رشته ها برای این قانون به حروف کوچک و بزرگ حساس هستند. هنگام استفاده از دقیقا مسابقات، شامل، شامل نمی شود، و یا اپراتور عبارت منظم، شما می توانید چندین مقدار را انتخاب کنید.

هنگامی که با استفاده از عملگر عبارت منظم، شما می توانید از عبارات منظم در ایجاد RE2 فرمت. عبارت منظم شما می تواند با تمام یا بخشی از رشته نسخه هدف مطابقت داشته باشد. شما همچنین می توانید ^ و $ مجریان برای مطابقت با آغاز، پایان، و یا به طور کامل از یک رشته مورد نظر استفاده کنید.

شماره ساخت برای مقادیر رشته:
دقیقا مطابقت دارد
حاوی،
شامل نمی شود،
عبارت منظم

برای مقادیر عددی:
=، ≠، >، ≥، <، ≤

ساخت(های) برنامه خود را برای هدف گذاری مشخص کنید.

قبل از استفاده از این قانون، شما باید یک حکومت شناسه برنامه برای انتخاب یک برنامه اپل یا آندروید مرتبط با پروژه Firebase خود استفاده کنید.

این اپراتور فقط برای برنامه های اپل و اندروید در دسترس است. آن را به برنامه مربوط CFBundleVersion برای اپل و کد نسخه برای آندروید. مقایسه رشته ها برای این قانون به حروف کوچک و بزرگ حساس است.

هنگام استفاده از دقیقا مسابقات، شامل، شامل نمی شود، و یا اپراتور عبارت منظم، شما می توانید چندین مقدار را انتخاب کنید.

هنگامی که با استفاده از عملگر عبارت منظم، شما می توانید از عبارات منظم در ایجاد RE2 فرمت. عبارت منظم شما می تواند با تمام یا بخشی از رشته نسخه هدف مطابقت داشته باشد. شما همچنین می توانید ^ و $ مجریان برای مطابقت با آغاز، پایان، و یا به طور کامل از یک رشته مورد نظر استفاده کنید.

سکو == iOS
اندروید
وب
سیستم عامل ==

سیستم عامل (های) مورد نظر را مشخص کنید.

قبل از استفاده از این قانون، شما باید یک حکومت شناسه برنامه برای انتخاب یک برنامه وب مرتبط با پروژه Firebase خود استفاده کنید.

این قانون ارزیابی true برای یک نمونه برنامه وب داده می شود اگر سیستم عامل و نسخه آن منطبق بر یک ارزش هدف در لیست مشخص شده است.
مرورگر ==

مرورگر(های) مورد نظر را مشخص کنید.

قبل از استفاده از این قانون، شما باید یک حکومت شناسه برنامه برای انتخاب یک برنامه وب مرتبط با پروژه Firebase خود استفاده کنید.

این قانون ارزیابی true برای یک نمونه برنامه وب داده می شود اگر مرورگر و نسخه آن یک مقدار هدف در لیست مشخص شده منطبق است.
زمان قرار <=، > تاریخ و زمان مشخص، یا در منطقه زمانی دستگاه یا منطقه زمانی مشخصی مانند "(GMT+11) ساعت سیدنی." زمان فعلی را با زمان واکشی دستگاه مقایسه می کند.
کاربر در صدک تصادفی <=، > 0-100

استفاده از این زمینه به اعمال یک تغییر در یک نمونه تصادفی از نمونه برنامه های (با حجم نمونه به عنوان کوچک که 0.0001٪)، با استفاده از <= و> اپراتور برای کاربران بخش (نمونه برنامه) به دو گروه.

هر نمونه برنامه مداوم به یک عدد تصادفی تمام یا کسری مطابق با یک کلید تعریف شده در آن پروژه نقشه برداری،. یک قانون را به طور پیش فرض کلید (در کنسول فایربیس نشان داده شده است به عنوان DEF) مگر اینکه شما را انتخاب کنید و یا ایجاد یکی دیگر از کلید استفاده کنید. شما می توانید یک قانون برای استفاده از کلید به طور پیش فرض با پاک کردن کاربران تصادفی با استفاده از این زمینه کلید بازگشت. می‌توانید از یک کلید در بین قوانین استفاده کنید تا به طور مداوم به همان نمونه‌های برنامه در محدوده درصد معین رسیدگی کنید. یا، می‌توانید با ایجاد یک کلید جدید، گروه جدیدی از نمونه‌های برنامه را که به‌طور تصادفی اختصاص داده شده‌اند، برای محدوده درصد معینی انتخاب کنید.

به عنوان مثال، برای ایجاد دو وضعیتی است که هر کدام به یک 5٪ غیر هم تداخل دارند از کاربران برنامه را اعمال می شود، شما می توانید از یک بیماری عبارتند از <= 5٪ قانون، و یکی دیگر از شرایط شامل هر دو> قانون و یک <= حکومت 10٪. برای اینکه برخی از کاربران به صورت تصادفی در هر دو گروه ظاهر شوند، از کلیدهای مختلف برای قوانین در هر شرایط استفاده کنید.

کاربر در مخاطب == یک یا چند مورد را از فهرست مخاطبان Google Analytics که برای پروژه خود تنظیم کرده اید، انتخاب کنید.

این قانون برای انتخاب برنامه مرتبط با پروژه Firebase شما به یک قانون App ID نیاز دارد.

توجه: از آنجا که بسیاری تجزیه و تحلیل ترافیک مخاطبان توسط حوادث و یا خواص کاربر، که می تواند اعمال کاربران بر اساس برنامه تعریف شده است، ممکن است برخی از زمان برای یک کاربر در حکومت مخاطبان را به اثر برای یک نمونه برنامه داده شده است.

دستگاه در منطقه/کشور == یک یا چند منطقه یا کشور را انتخاب کنید. این قانون ارزیابی true برای یک نمونه برنامه داده شده اگر نمونه در هر یک از مناطق یا کشورهای ذکر شده است. کد کشور دستگاه با استفاده از آدرس IP دستگاه در درخواست یا کد کشور تعیین شده توسط Firebase Analytics (اگر داده های Analytics با Firebase به اشتراک گذاشته شده است) تعیین می شود.
زبان دستگاه == یک یا چند زبان را انتخاب کنید. این قانون ارزیابی true برای یک نمونه برنامه داده شده که به عنوان مثال برنامه بر روی یک دستگاه که با استفاده از یکی از زبان های ذکر شده نصب شده است.
دارایی کاربر برای مقادیر رشته:
حاوی،
شامل نمی شود،
دقیقا مطابقت دارد
عبارت منظم

برای مقادیر عددی:
=، ≠، >، ≥، <، ≤

توجه: در کلاینت، فقط می‌توانید مقادیر رشته‌ای را برای ویژگی‌های کاربر تنظیم کنید. برای شرایطی که از عملگرهای عددی استفاده می کنند، Remote Config مقدار ویژگی کاربر مربوطه را به یک عدد صحیح/فلوت تبدیل می کند.
از لیستی از ویژگی‌های کاربر Google Analytics موجود را انتخاب کنید. برای یادگیری نحوه شما می توانید خواص کاربر به دلخواه برنامه خود را برای بخش های بسیار خاص از پایگاه کاربر خود را استفاده کنید، مشاهده از راه دور پیکربندی و کاربر خواص .

برای کسب اطلاعات بیشتر در مورد ویژگی های کاربر، به راهنمای زیر مراجعه کنید:

هنگام استفاده از دقیقا منطبق، شامل، شامل نمی شود و یا اپراتور عبارت منظم، شما می توانید چندین مقدار را انتخاب کنید.

هنگامی که با استفاده از عملگر عبارت منظم، شما می توانید از عبارات منظم در ایجاد RE2 فرمت. عبارت منظم شما می تواند با تمام یا بخشی از رشته نسخه هدف مطابقت داشته باشد. شما همچنین می توانید ^ و $ مجریان برای مطابقت با آغاز، پایان، و یا به طور کامل از یک رشته مورد نظر استفاده کنید.

توجه: خواص کاربران به صورت خودکار جمع آوری شده در حال حاضر در دسترس نیست که ایجاد شرایط از راه دور پیکربندی.
بخش وارداتی == یک یا چند بخش وارد شده را انتخاب کنید. این قانون نیاز به راه اندازی سفارشی بخش وارد .
شناسه نصب == یک یا چند شناسه نصب (حداکثر 50) را برای هدف تعیین کنید. این قانون ارزیابی true برای هر نصب اگر شناسه که نصب و راه اندازی در فهرست کاما جدا از ارزش ها است.

برای یادگیری نحوه نصب و راه اندازی شما می توانید شناسه گرفتن، و بازیابی identifers مشتری .

جستجوی پارامترها و شرایط

شما می توانید کلید پروژه خود را پارامتر، مقادیر پارامتر، و شرایط از جستجو فایربیس کنسول با استفاده از جعبه جستجو در بالای از راه دور تب پیکربندی پارامترهای.

محدودیت در پارامترها و شرایط

در یک پروژه Firebase، می توانید تا 2000 پارامتر و حداکثر 500 شرایط داشته باشید. کلیدهای پارامتر می توانند حداکثر 256 کاراکتر داشته باشند، باید با نویسه زیرخط یا حروف انگلیسی (AZ، az) شروع شوند و ممکن است شامل اعداد نیز باشند. طول کل رشته های مقدار پارامتر در یک پروژه نمی تواند از 1,000,000 کاراکتر تجاوز کند.

مراحل بعدی

برای شروع پیکربندی پروژه فایربیس خود را، ببینید تنظیم یک فایربیس از راه دور پیکربندی پروژه .