Catch up on everything announced at Firebase Summit, and learn how Firebase can help you accelerate app development and run your app with confidence. Learn More

रिमोट कॉन्फ़िगरेशन पैरामीटर और शर्तें

संग्रह की मदद से व्यवस्थित रहें अपनी प्राथमिकताओं के आधार पर, कॉन्टेंट को सेव करें और कैटगरी में बांटें.

फायरबेस कंसोल या रिमोट कॉन्फिग बैकएंड एपीआई का उपयोग करते समय, आप एक या अधिक पैरामीटर (की-वैल्यू जोड़े) परिभाषित करते हैं और उन पैरामीटर के लिए इन-ऐप डिफ़ॉल्ट मान प्रदान करते हैं। आप सर्वर-साइड पैरामीटर मानों को परिभाषित करके इन-ऐप डिफ़ॉल्ट मानों को ओवरराइड कर सकते हैं। पैरामीटर कुंजियाँ और पैरामीटर मान स्ट्रिंग्स हैं, लेकिन जब आप अपने ऐप में इन मानों का उपयोग करते हैं तो पैरामीटर मान अन्य डेटा प्रकारों के रूप में डाले जा सकते हैं।

फायरबेस कंसोल, एडमिन एसडीके या रिमोट कॉन्फिग रेस्ट एपीआई का उपयोग करके, आप अपने मापदंडों के लिए नए डिफ़ॉल्ट मान बना सकते हैं, साथ ही सशर्त मान जो ऐप इंस्टेंस के समूहों को लक्षित करने के लिए उपयोग किए जाते हैं। हर बार जब आप फायरबेस कंसोल में अपना कॉन्फ़िगरेशन अपडेट करते हैं, तो फायरबेस आपके रिमोट कॉन्फिग टेम्प्लेट का एक नया संस्करण बनाता और प्रकाशित करता है। पिछला संस्करण संग्रहीत है, जिससे आप आवश्यकतानुसार पुनः प्राप्त या रोलबैक कर सकते हैं। ये ऑपरेशन आपके लिए फायरबेस कंसोल, फायरबेस एडमिन एसडीके और रेस्ट एपीआई के माध्यम से उपलब्ध हैं और रिमोट कॉन्फिग टेम्पलेट संस्करणों को प्रबंधित करने में अधिक विस्तार से वर्णित हैं।

यह मार्गदर्शिका पैरामीटर, शर्तें, नियम, सशर्त मान और बताती है कि रिमोट कॉन्फ़िगरेशन सर्वर और आपके ऐप में विभिन्न पैरामीटर मानों को कैसे प्राथमिकता दी जाती है। यह शर्तों को बनाने के लिए उपयोग किए जाने वाले नियमों के प्रकार का विवरण भी प्रदान करता है।

शर्तें, नियम और सशर्त मूल्य

ऐप इंस्टेंस के समूह को लक्षित करने के लिए एक शर्त का उपयोग किया जाता है। शर्तें एक या एक से अधिक नियमों से बनी होती true , जो किसी दिए गए ऐप इंस्टेंस के लिए शर्त का true मूल्यांकन करने के लिए सभी का सही मूल्यांकन करना चाहिए। यदि किसी नियम का मान अपरिभाषित है (उदाहरण के लिए, जब कोई मान उपलब्ध नहीं है), तो वह नियम false का मूल्यांकन करेगा।

उदाहरण के लिए, एक पैरामीटर जो ऐप के स्प्लैश पेज को परिभाषित करता है, सरल नियम का उपयोग करके ओएस प्रकार के आधार पर विभिन्न छवियों को प्रदर्शित कर सकता है if device_os = Android :

फायरबेस कंसोल में 'स्प्लैश_पेज' पैरामीटर का स्क्रीन कैप्चर आईओएस के लिए डिफ़ॉल्ट मान और एंड्रॉइड के लिए सशर्त मान दिखा रहा है

या, जब आपका ऐप विशेष प्रचारक आइटम प्रदर्शित करता है, तो इसे नियंत्रित करने के लिए समय की स्थिति का उपयोग किया जा सकता है।

एक पैरामीटर में कई सशर्त मान हो सकते हैं जो विभिन्न स्थितियों का उपयोग करते हैं, और पैरामीटर किसी प्रोजेक्ट के भीतर शर्तों को साझा कर सकते हैं। फायरबेस कंसोल के पैरामीटर्स टैब में, आप प्रत्येक पैरामीटर के सशर्त मानों के लिए फ़ेच प्रतिशत देख सकते हैं। यह मीट्रिक पिछले 24 घंटों में प्रत्येक मान प्राप्त करने वाले अनुरोधों का प्रतिशत दर्शाता है।

पैरामीटर मान प्राथमिकता

एक पैरामीटर में इसके साथ जुड़े कई सशर्त मान हो सकते हैं। निम्नलिखित नियम निर्धारित करते हैं कि कौन सा मान रिमोट कॉन्फ़िग सर्वर से प्राप्त किया जाता है, और किसी विशेष समय पर दिए गए ऐप इंस्टेंस में कौन सा मान उपयोग किया जाता है:

सर्वर-साइड पैरामीटर मान निम्न प्राथमिकता सूची के अनुसार प्राप्त किए जाते हैं

  1. सबसे पहले, सशर्त मान लागू होते हैं, यदि कोई ऐसी स्थिति है जो किसी दिए गए ऐप इंस्टेंस के लिए true का मूल्यांकन करती है। यदि एकाधिक स्थितियों का मूल्यांकन true होता है, तो Firebase कंसोल UI में दिखाए गए पहले (शीर्ष) को प्राथमिकता दी जाती है, और उस स्थिति से जुड़े सशर्त मान प्रदान किए जाते हैं, जब कोई ऐप बैकएंड से मान प्राप्त करता है। आप शर्तें टैब में स्थितियों को ड्रैग और ड्रॉप करके शर्तों की प्राथमिकता बदल सकते हैं।

  2. यदि शर्तों के साथ कोई सशर्त मान नहीं है जो true का मूल्यांकन करता है, तो सर्वर-साइड डिफ़ॉल्ट मान प्रदान किया जाता है जब कोई ऐप बैकएंड से मान प्राप्त करता है। यदि बैकएंड में कोई पैरामीटर मौजूद नहीं है, या यदि डिफ़ॉल्ट मान ऐप के अंदर डिफ़ॉल्ट का उपयोग करने के लिए सेट है, तो उस पैरामीटर के लिए कोई मान प्रदान नहीं किया जाता है जब कोई ऐप मान प्राप्त करता है।

आपके ऐप में, निम्न प्राथमिकता सूची के अनुसार पैरामीटर मान get विधियों द्वारा लौटाए जाते हैं

  1. यदि बैकएंड से कोई मान प्राप्त किया गया था और फिर सक्रिय किया गया था, तो ऐप प्राप्त किए गए मान का उपयोग करता है। सक्रिय पैरामीटर मान लगातार हैं।
  2. यदि बैकएंड से कोई मान प्राप्त नहीं किया गया था, या यदि Remote Config बैकएंड से प्राप्त मान सक्रिय नहीं किए गए हैं, तो ऐप इन-ऐप डिफ़ॉल्ट मान का उपयोग करता है।

    डिफ़ॉल्ट मान प्राप्त करने और सेट करने के बारे में अधिक जानकारी के लिए, दूरस्थ कॉन्फ़िगरेशन टेम्पलेट डिफ़ॉल्ट डाउनलोड करें देखें।

  3. यदि कोई इन-ऐप डिफ़ॉल्ट मान सेट नहीं किया गया है, तो ऐप एक स्थिर प्रकार के मान का उपयोग करता है (जैसे कि int के लिए 0 और boolean के लिए false )।

यह ग्राफ़िक संक्षेप में बताता है कि कैसे Remote Config बैकएंड और आपके ऐप में पैरामीटर मानों को प्राथमिकता दी जाती है:

उपरोक्त आदेशित सूचियों द्वारा वर्णित प्रवाह को दर्शाने वाला आरेख

पैरामीटर मान डेटा प्रकार

Remote Config आपको प्रत्येक पैरामीटर के लिए डेटा प्रकार चुनने की अनुमति देता है, और टेम्पलेट अपडेट से पहले उस प्रकार के विरुद्ध सभी सर्वर-साइड मानों को मान्य करता है। डेटा प्रकार संग्रहीत किया जाता है और getRemoteConfig अनुरोध पर लौटाया जाता है।

वर्तमान में समर्थित प्रकार हैं:

  • String
  • Boolean
  • Number
  • JSON

फायरबेस कंसोल यूआई में पैरामीटर कुंजी के बगल में एक ड्रॉपडाउन से डेटा प्रकार का चयन किया जा सकता है। REST में API प्रकारों को पैरामीटर ऑब्जेक्ट के भीतर value_type फ़ील्ड का उपयोग करके सेट किया जा सकता है।

पैरामीटर समूह

Remote Config आपको अधिक संगठित UI और मानसिक मॉडल के लिए पैरामीटर को एक साथ समूहित करने की अनुमति देता है।

उदाहरण के लिए, मान लें कि आपको एक नई लॉगिन सुविधा शुरू करते समय तीन अलग-अलग प्रमाणन प्रकारों को सक्षम या अक्षम करने की आवश्यकता है। Remote Config के साथ, आप वांछित प्रकार को सक्षम करने के लिए तीन पैरामीटर बना सकते हैं, और फिर उन्हें "नया लॉगिन" नामक समूह में व्यवस्थित कर सकते हैं, जिसमें उपसर्ग या विशेष सॉर्टिंग जोड़ने की कोई आवश्यकता नहीं है।

आप Firebase कंसोल या Remote Config REST API का उपयोग करके पैरामीटर समूह बना सकते हैं। आपके द्वारा बनाए गए प्रत्येक पैरामीटर समूह का आपके Remote Config टेम्पलेट में एक अद्वितीय नाम होता है। पैरामीटर समूह बनाते समय ध्यान रखें:

  • पैरामीटर्स को किसी भी समय केवल एक समूह में शामिल किया जा सकता है, और पैरामीटर कुंजी अभी भी सभी पैरामीटरों में अद्वितीय होनी चाहिए।
  • पैरामीटर समूह के नाम 256 वर्णों तक सीमित हैं।
  • यदि आप REST API और Firebase कंसोल दोनों का उपयोग करते हैं, तो सुनिश्चित करें कि प्रकाशन पर पैरामीटर समूहों को संभालने के लिए कोई भी REST API लॉजिक अपडेट किया गया है।

Firebase कंसोल का उपयोग करके पैरामीटर समूह बनाएं या संशोधित करें

आप फायरबेस कंसोल के पैरामीटर्स टैब में पैरामीटर्स को ग्रुप कर सकते हैं। समूह बनाने या संशोधित करने के लिए:

  1. समूह प्रबंधित करें चुनें.
  2. उन पैरामीटर के लिए चेकबॉक्स चुनें जिन्हें आप जोड़ना चाहते हैं और समूह में ले जाएं चुनें.
  3. एक मौजूदा समूह का चयन करें, या नाम और विवरण दर्ज करके और नया समूह बनाएं का चयन करके एक नया समूह बनाएं । आपके द्वारा किसी समूह को सहेजने के बाद, यह परिवर्तन प्रकाशित करें बटन का उपयोग करके प्रकाशित होने के लिए उपलब्ध होता है।

प्रोग्रामेटिक रूप से समूह बनाएं

Remote Config REST API पैरामीटर समूह बनाने और प्रकाशित करने का एक स्वचालित तरीका प्रदान करता है। यह मानते हुए कि आप 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 कंसोल में समर्थित हैं। समतुल्य कार्यप्रणाली Remote Config REST API में उपलब्ध है, जैसा कि सशर्त अभिव्यक्ति संदर्भ में विस्तृत है।

नियम प्रकार ऑपरेटर मान टिप्पणी
अनुप्रयोग == अपने Firebase प्रोजेक्ट से जुड़े ऐप्स के लिए ऐप आईडी की सूची में से चुनें। जब आप फायरबेस में एक ऐप जोड़ते हैं, तो आप एक बंडल आईडी या एंड्रॉइड पैकेज नाम दर्ज करते हैं जो एक विशेषता को परिभाषित करता है जो रिमोट कॉन्फ़िगरेशन नियमों में ऐप आईडी के रूप में सामने आता है।

इस विशेषता का उपयोग इस प्रकार करें:
  • Apple प्लेटफ़ॉर्म के लिए: ऐप के CFBundleIdentifier का उपयोग करें। आप Xcode में अपने ऐप के प्राथमिक लक्ष्य के लिए सामान्य टैब में बंडल पहचानकर्ता पा सकते हैं।
  • Android के लिए: ऐप के applicationId का उपयोग करें। आप applicationId को अपने ऐप-लेवल build.gradle फ़ाइल में पा सकते हैं।
एप्लिकेशन वेरीज़न स्ट्रिंग मानों के लिए:
बिल्कुल मेल खाता है,
रोकना,
शामिल नहीं है,
नियमित अभिव्यक्ति

संख्यात्मक मानों के लिए:
=, ≠, >, ≥, <, ≤

लक्षित करने के लिए अपने ऐप के संस्करण (संस्करणों) को निर्दिष्ट करें।

इस नियम का उपयोग करने से पहले, आपको अपने Firebase प्रोजेक्ट से जुड़े Android/Apple ऐप का चयन करने के लिए ऐप आईडी नियम का उपयोग करना होगा।

Apple प्लेटफ़ॉर्म के लिए: ऐप के CFBundleShortVersionString का उपयोग करें।

नोट: सुनिश्चित करें कि आपका ऐप्पल ऐप फायरबेस ऐप्पल प्लेटफॉर्म एसडीके संस्करण 6.24.0 या उससे ऊपर का उपयोग कर रहा है, क्योंकि CFBundleShortVersionString पिछले संस्करणों में नहीं भेजा जा रहा है ( रिलीज़ नोट्स देखें)।

Android के लिए: ऐप के versionName का उपयोग करें।

इस नियम के लिए स्ट्रिंग की तुलना केस-संवेदी है। सटीक मिलान का उपयोग करते समय, इसमें शामिल है, इसमें शामिल नहीं है , या रेगुलर एक्सप्रेशन ऑपरेटर का उपयोग करते समय, आप एकाधिक मानों का चयन कर सकते हैं।

रेगुलर एक्सप्रेशन ऑपरेटर का उपयोग करते समय, आप RE2 स्वरूप में रेगुलर एक्सप्रेशन बना सकते हैं। आपकी रेगुलर एक्सप्रेशन लक्ष्य संस्करण स्ट्रिंग के सभी या कुछ भाग से मेल खा सकती है। आप लक्ष्य स्ट्रिंग की शुरुआत, अंत या पूरी तरह से मिलान करने के लिए ^ और $ एंकर का भी उपयोग कर सकते हैं।

निर्माण संख्या स्ट्रिंग मानों के लिए:
बिल्कुल मेल खाता है,
रोकना,
शामिल नहीं है,
नियमित अभिव्यक्ति

संख्यात्मक मानों के लिए:
=, ≠, >, ≥, <, ≤

लक्षित करने के लिए अपने ऐप के बिल्ड निर्दिष्ट करें।

इस नियम का उपयोग करने से पहले, आपको अपने Firebase प्रोजेक्ट से जुड़े Apple या Android ऐप का चयन करने के लिए ऐप आईडी नियम का उपयोग करना होगा।

यह ऑपरेटर केवल Apple और Android ऐप्स के लिए उपलब्ध है। यह Apple के लिए ऐप के CFBundleVersion और Android के लिए versionCode से मेल खाता है। इस नियम के लिए स्ट्रिंग की तुलना केस-संवेदी है।

सटीक मिलान का उपयोग करते समय, इसमें शामिल है, इसमें शामिल नहीं है , या रेगुलर एक्सप्रेशन ऑपरेटर का उपयोग करते समय, आप एकाधिक मानों का चयन कर सकते हैं।

रेगुलर एक्सप्रेशन ऑपरेटर का उपयोग करते समय, आप RE2 स्वरूप में रेगुलर एक्सप्रेशन बना सकते हैं। आपकी रेगुलर एक्सप्रेशन लक्ष्य संस्करण स्ट्रिंग के सभी या कुछ भाग से मेल खा सकती है। आप लक्ष्य स्ट्रिंग की शुरुआत, अंत या पूरी तरह से मिलान करने के लिए ^ और $ एंकर का भी उपयोग कर सकते हैं।

प्लैटफ़ॉर्म == आईओएस
एंड्रॉयड
वेब
ऑपरेटिंग सिस्टम ==

लक्षित करने के लिए ऑपरेटिंग सिस्टम निर्दिष्ट करें।

इस नियम का उपयोग करने से पहले, आपको अपने फायरबेस प्रोजेक्ट से जुड़े वेब ऐप का चयन करने के लिए ऐप आईडी नियम का उपयोग करना होगा।

यदि ऑपरेटिंग सिस्टम और इसका संस्करण निर्दिष्ट सूची में लक्ष्य मान से मेल खाता है, तो यह नियम किसी दिए गए वेब ऐप इंस्टेंस के लिए true का मूल्यांकन करता है।
ब्राउज़र ==

लक्षित करने के लिए ब्राउज़र निर्दिष्ट करें।

इस नियम का उपयोग करने से पहले, आपको अपने फायरबेस प्रोजेक्ट से जुड़े वेब ऐप का चयन करने के लिए ऐप आईडी नियम का उपयोग करना होगा।

यदि ब्राउज़र और इसका संस्करण निर्दिष्ट सूची में लक्ष्य मान से मेल खाता है, तो यह नियम किसी दिए गए वेब ऐप इंस्टेंस के लिए true का मूल्यांकन करता है।
उपकरण श्रेणी है या नही यह गतिमान यह नियम मूल्यांकन करता है कि आपके वेब ऐप तक पहुँचने वाला उपकरण मोबाइल है या गैर-मोबाइल (डेस्कटॉप या कंसोल)। यह नियम प्रकार केवल वेब ऐप्स के लिए उपलब्ध है।
बोली में है एक या अधिक भाषाओं का चयन करें। यह नियम किसी दिए गए ऐप इंस्टेंस के लिए true का मूल्यांकन करता है यदि वह ऐप इंस्टेंस किसी डिवाइस पर स्थापित है जो सूचीबद्ध भाषाओं में से एक का उपयोग करता है।
देश/क्षेत्र में है एक या अधिक क्षेत्रों या देशों का चयन करें। यह नियम किसी दिए गए ऐप इंस्टेंस के लिए true का मूल्यांकन करता है यदि इंस्टेंस सूचीबद्ध क्षेत्रों या देशों में से किसी में है। डिवाइस देश कोड अनुरोध में डिवाइस के आईपी पते या फायरबेस एनालिटिक्स द्वारा निर्धारित देश कोड का उपयोग करके निर्धारित किया जाता है (यदि एनालिटिक्स डेटा फायरबेस के साथ साझा किया जाता है)।
उपयोगकर्ता दर्शक कम से कम एक शामिल है Google Analytics ऑडियंस की सूची में से एक या अधिक का चयन करें जिसे आपने अपने प्रोजेक्ट के लिए सेट किया है।

इस नियम के लिए आपके फायरबेस प्रोजेक्ट से जुड़े ऐप का चयन करने के लिए ऐप आईडी नियम की आवश्यकता होती है।

नोट: क्योंकि कई Analytics ऑडियंस इवेंट या उपयोगकर्ता प्रॉपर्टी द्वारा परिभाषित किए जाते हैं, जो ऐप उपयोगकर्ताओं के कार्यों पर आधारित हो सकते हैं, किसी दिए गए ऐप इंस्टेंस के लिए ऑडियंस नियम में उपयोगकर्ता को प्रभावी होने में कुछ समय लग सकता है।

उपयोगकर्ता संपत्ति स्ट्रिंग मानों के लिए:
रोकना,
शामिल नहीं है,
बिल्कुल मेल खाता है,
नियमित अभिव्यक्ति

संख्यात्मक मानों के लिए:
=, ≠, >, ≥, <, ≤

नोट: क्लाइंट पर, आप उपयोगकर्ता गुणों के लिए केवल स्ट्रिंग मान सेट कर सकते हैं। संख्यात्मक ऑपरेटरों का उपयोग करने वाली स्थितियों के लिए, रिमोट कॉन्फ़िगरेशन संबंधित उपयोगकर्ता संपत्ति के मान को एक पूर्णांक/फ्लोट में परिवर्तित करता है।
उपलब्ध Google Analytics उपयोगकर्ता संपत्तियों की सूची में से चयन करें। यह जानने के लिए कि आप अपने उपयोगकर्ता आधार के बहुत विशिष्ट सेगमेंट के लिए अपने ऐप को अनुकूलित करने के लिए उपयोगकर्ता गुणों का उपयोग कैसे कर सकते हैं, रिमोट कॉन्फ़िग और उपयोगकर्ता गुण देखें।

उपयोगकर्ता गुणों के बारे में अधिक जानने के लिए, निम्न मार्गदर्शिकाएँ देखें:

सटीक मिलान का उपयोग करते समय, इसमें शामिल है, इसमें शामिल नहीं है या रेगुलर एक्सप्रेशन ऑपरेटर का उपयोग करते समय, आप एकाधिक मानों का चयन कर सकते हैं।

रेगुलर एक्सप्रेशन ऑपरेटर का उपयोग करते समय, आप RE2 स्वरूप में रेगुलर एक्सप्रेशन बना सकते हैं। आपकी रेगुलर एक्सप्रेशन लक्ष्य संस्करण स्ट्रिंग के सभी या कुछ भाग से मेल खा सकती है। आप लक्ष्य स्ट्रिंग की शुरुआत, अंत या पूरी तरह से मिलान करने के लिए ^ और $ एंकर का भी उपयोग कर सकते हैं।

ध्यान दें: रिमोट कॉन्फिग की स्थिति बनाते समय स्वचालित रूप से एकत्रित उपयोगकर्ता गुण वर्तमान में उपलब्ध नहीं हैं।
यादृच्छिक प्रतिशतक में उपयोगकर्ता <=, > 0-100

उपयोगकर्ताओं (ऐप इंस्टेंसेस) को समूहों में विभाजित करने के लिए <= और > ऑपरेटरों का उपयोग करते हुए, ऐप इंस्टेंस के यादृच्छिक नमूने (.0001% जितना छोटा नमूना आकार के साथ) में परिवर्तन लागू करने के लिए इस फ़ील्ड का उपयोग करें।

उस प्रोजेक्ट में परिभाषित एक कुंजी के अनुसार, प्रत्येक ऐप इंस्टेंस को लगातार यादृच्छिक पूर्ण या आंशिक संख्या में मैप किया जाता है। एक नियम डिफ़ॉल्ट कुंजी (Firebase कंसोल में DEF के रूप में दिखाया गया) का उपयोग करेगा जब तक कि आप दूसरी कुंजी का चयन या निर्माण नहीं करते। आप इस कुंजी फ़ील्ड का उपयोग करके यादृच्छिक उपयोगकर्ताओं को साफ़ करके डिफ़ॉल्ट कुंजी का उपयोग करने के लिए नियम वापस कर सकते हैं। आप दी गई प्रतिशत सीमाओं के भीतर एक ही ऐप इंस्टेंस को लगातार संबोधित करने के लिए नियमों में एक ही कुंजी का उपयोग कर सकते हैं। या, आप एक नई कुंजी बनाकर किसी दी गई प्रतिशत सीमा के लिए बेतरतीब ढंग से असाइन किए गए ऐप इंस्टेंस के नए समूह का चयन कर सकते हैं।

उदाहरण के लिए, दो संबंधित शर्तें बनाने के लिए, जिनमें से प्रत्येक ऐप के गैर-ओवरलैपिंग 5% उपयोगकर्ताओं पर लागू होती है, आप एक शर्त में <= 5% नियम शामिल कर सकते हैं, और दूसरी शर्त में > 5% नियम और <= दोनों शामिल हो सकते हैं 10% नियम। कुछ उपयोगकर्ताओं के लिए दोनों समूहों में बेतरतीब ढंग से प्रकट होना संभव बनाने के लिए, प्रत्येक स्थिति में नियमों के लिए अलग-अलग कुंजियों का उपयोग करें।

आयातित खंड में है एक या अधिक आयातित खंड चुनें। इस नियम के लिए कस्टम आयातित सेगमेंट सेट अप करने की आवश्यकता है।
दिनांक समय के बाद से पहले एक निर्दिष्ट दिनांक और समय, या तो डिवाइस समयक्षेत्र में या निर्दिष्ट समयक्षेत्र जैसे "(GMT+11) सिडनी समय।" डिवाइस लाने के समय के साथ वर्तमान समय की तुलना करता है।
पहले खुला के बाद से पहले निर्दिष्ट समय क्षेत्र में निर्दिष्ट तिथि और समय।

उन उपयोगकर्ताओं से मेल खाता है जो पहले लक्षित ऐप को निर्दिष्ट समय सीमा के भीतर खोलते हैं।

निम्नलिखित एसडीके की आवश्यकता है:

  • Google Analytics के लिए Firebase SDK
  • Apple प्लेटफ़ॉर्म SDK v9.0.0+ या Android SDK v21.1.1+ (Firebase BoM v30.3.0+)

स्थापना आईडी में है लक्षित करने के लिए एक या अधिक स्थापना आईडी (50 तक) निर्दिष्ट करें। यह नियम किसी दिए गए इंस्टॉलेशन के लिए true का मूल्यांकन करता है यदि उस इंस्टॉलेशन की आईडी मानों की अल्पविराम से अलग की गई सूची में है।

यह जानने के लिए कि आप स्थापना आईडी कैसे प्राप्त कर सकते हैं, ग्राहक पहचानकर्ताओं को पुनः प्राप्त करें देखें।

मापदंडों और शर्तों को खोजना

आप Remote Config Parameters Tab के शीर्ष पर स्थित खोज बॉक्स का उपयोग करके Firebase कंसोल से अपने प्रोजेक्ट की पैरामीटर कुंजियाँ, पैरामीटर मान और शर्तें खोज सकते हैं।

मापदंडों और शर्तों पर सीमाएं

किसी Firebase प्रोजेक्ट में, आपके पास अधिकतम 2000 पैरामीटर और अधिकतम 500 शर्तें हो सकती हैं. पैरामीटर कुंजियाँ 256 वर्णों तक लंबी हो सकती हैं, एक अंडरस्कोर या अंग्रेजी अक्षर वर्ण (AZ, az) से शुरू होनी चाहिए, और इसमें संख्याएँ भी शामिल हो सकती हैं। एक परियोजना के भीतर पैरामीटर मान स्ट्रिंग्स की कुल लंबाई 1,000,000 वर्णों से अधिक नहीं हो सकती।

मापदंडों और शर्तों में परिवर्तन देखना

आप Firebase कंसोल से अपने Remote Config टेम्प्लेट में नवीनतम परिवर्तन देख सकते हैं। प्रत्येक व्यक्तिगत पैरामीटर और स्थिति के लिए, आप यह कर सकते हैं:

  • उस उपयोगकर्ता का नाम देखें जिसने अंतिम बार पैरामीटर या शर्त को संशोधित किया था।

  • यदि परिवर्तन उसी दिन हुआ है, तो सक्रिय Remote Config टेम्पलेट में परिवर्तन प्रकाशित होने के बाद से बीत चुके मिनटों या घंटों की संख्या देखें।

  • यदि परिवर्तन एक या अधिक दिन पहले हुआ हो, तो वह दिनांक देखें जब परिवर्तन को सक्रिय Remote Config Template में प्रकाशित किया गया था।

पैरामीटर अद्यतन

दूरस्थ कॉन्फ़िगरेशन पैरामीटर पृष्ठ पर, अंतिम प्रकाशित कॉलम प्रत्येक पैरामीटर को संशोधित करने वाले अंतिम उपयोगकर्ता और परिवर्तन के लिए अंतिम प्रकाशन तिथि दिखाता है:

  • समूहीकृत पैरामीटर के लिए परिवर्तन मेटाडेटा देखने के लिए, पैरामीटर समूह का विस्तार करें।

  • प्रकाशन तिथि के अनुसार आरोही या अवरोही क्रम में क्रमबद्ध करने के लिए, अंतिम प्रकाशित कॉलम लेबल पर क्लिक करें।

स्थिति अद्यतन

रिमोट कॉन्फ़िगरेशन स्थिति पृष्ठ पर, आप अंतिम उपयोगकर्ता को देख सकते हैं जिसने स्थिति को संशोधित किया और जिस तिथि को उन्होंने संशोधित किया, वह प्रत्येक स्थिति के नीचे अंतिम बार संशोधित किया गया था।

अगले कदम

अपने Firebase प्रोजेक्ट को कॉन्फ़िगर करना प्रारंभ करने के लिए, Firebase Remote Config Project सेट अप करें देखें।

,

फायरबेस कंसोल या रिमोट कॉन्फिग बैकएंड एपीआई का उपयोग करते समय, आप एक या अधिक पैरामीटर (की-वैल्यू जोड़े) परिभाषित करते हैं और उन पैरामीटर के लिए इन-ऐप डिफ़ॉल्ट मान प्रदान करते हैं। आप सर्वर-साइड पैरामीटर मानों को परिभाषित करके इन-ऐप डिफ़ॉल्ट मानों को ओवरराइड कर सकते हैं। पैरामीटर कुंजियाँ और पैरामीटर मान स्ट्रिंग्स हैं, लेकिन जब आप अपने ऐप में इन मानों का उपयोग करते हैं तो पैरामीटर मान अन्य डेटा प्रकारों के रूप में डाले जा सकते हैं।

फायरबेस कंसोल, एडमिन एसडीके या रिमोट कॉन्फिग रेस्ट एपीआई का उपयोग करके, आप अपने मापदंडों के लिए नए डिफ़ॉल्ट मान बना सकते हैं, साथ ही सशर्त मान जो ऐप इंस्टेंस के समूहों को लक्षित करने के लिए उपयोग किए जाते हैं। हर बार जब आप फायरबेस कंसोल में अपना कॉन्फ़िगरेशन अपडेट करते हैं, तो फायरबेस आपके रिमोट कॉन्फिग टेम्प्लेट का एक नया संस्करण बनाता और प्रकाशित करता है। पिछला संस्करण संग्रहीत है, जिससे आप आवश्यकतानुसार पुनः प्राप्त या रोलबैक कर सकते हैं। ये ऑपरेशन आपके लिए फायरबेस कंसोल, फायरबेस एडमिन एसडीके और रेस्ट एपीआई के माध्यम से उपलब्ध हैं और रिमोट कॉन्फिग टेम्पलेट संस्करणों को प्रबंधित करने में अधिक विस्तार से वर्णित हैं।

यह मार्गदर्शिका पैरामीटर, शर्तें, नियम, सशर्त मान और बताती है कि रिमोट कॉन्फ़िगरेशन सर्वर और आपके ऐप में विभिन्न पैरामीटर मानों को कैसे प्राथमिकता दी जाती है। यह शर्तों को बनाने के लिए उपयोग किए जाने वाले नियमों के प्रकार का विवरण भी प्रदान करता है।

शर्तें, नियम और सशर्त मूल्य

ऐप इंस्टेंस के समूह को लक्षित करने के लिए एक शर्त का उपयोग किया जाता है। शर्तें एक या एक से अधिक नियमों से बनी होती true , जो किसी दिए गए ऐप इंस्टेंस के लिए शर्त का true मूल्यांकन करने के लिए सभी का सही मूल्यांकन करना चाहिए। यदि किसी नियम का मान अपरिभाषित है (उदाहरण के लिए, जब कोई मान उपलब्ध नहीं है), तो वह नियम false का मूल्यांकन करेगा।

उदाहरण के लिए, एक पैरामीटर जो ऐप के स्प्लैश पेज को परिभाषित करता है, सरल नियम का उपयोग करके ओएस प्रकार के आधार पर विभिन्न छवियों को प्रदर्शित कर सकता है if device_os = Android :

फायरबेस कंसोल में 'स्प्लैश_पेज' पैरामीटर का स्क्रीन कैप्चर आईओएस के लिए डिफ़ॉल्ट मान और एंड्रॉइड के लिए सशर्त मान दिखा रहा है

या, जब आपका ऐप विशेष प्रचारक आइटम प्रदर्शित करता है, तो इसे नियंत्रित करने के लिए समय की स्थिति का उपयोग किया जा सकता है।

एक पैरामीटर में कई सशर्त मान हो सकते हैं जो विभिन्न स्थितियों का उपयोग करते हैं, और पैरामीटर किसी प्रोजेक्ट के भीतर शर्तों को साझा कर सकते हैं। फायरबेस कंसोल के पैरामीटर्स टैब में, आप प्रत्येक पैरामीटर के सशर्त मानों के लिए फ़ेच प्रतिशत देख सकते हैं। यह मीट्रिक पिछले 24 घंटों में प्रत्येक मान प्राप्त करने वाले अनुरोधों का प्रतिशत दर्शाता है।

पैरामीटर मान प्राथमिकता

एक पैरामीटर में इसके साथ जुड़े कई सशर्त मान हो सकते हैं। निम्नलिखित नियम निर्धारित करते हैं कि कौन सा मान रिमोट कॉन्फ़िग सर्वर से प्राप्त किया जाता है, और किसी विशेष समय पर दिए गए ऐप इंस्टेंस में कौन सा मान उपयोग किया जाता है:

सर्वर-साइड पैरामीटर मान निम्न प्राथमिकता सूची के अनुसार प्राप्त किए जाते हैं

  1. सबसे पहले, सशर्त मान लागू होते हैं, यदि कोई ऐसी स्थिति है जो किसी दिए गए ऐप इंस्टेंस के लिए true का मूल्यांकन करती है। यदि एकाधिक स्थितियों का मूल्यांकन true होता है, तो Firebase कंसोल UI में दिखाए गए पहले (शीर्ष) को प्राथमिकता दी जाती है, और उस स्थिति से जुड़े सशर्त मान प्रदान किए जाते हैं, जब कोई ऐप बैकएंड से मान प्राप्त करता है। आप शर्तें टैब में स्थितियों को ड्रैग और ड्रॉप करके शर्तों की प्राथमिकता बदल सकते हैं।

  2. यदि शर्तों के साथ कोई सशर्त मान नहीं है जो true का मूल्यांकन करता है, तो सर्वर-साइड डिफ़ॉल्ट मान प्रदान किया जाता है जब कोई ऐप बैकएंड से मान प्राप्त करता है। यदि बैकएंड में कोई पैरामीटर मौजूद नहीं है, या यदि डिफ़ॉल्ट मान ऐप के अंदर डिफ़ॉल्ट का उपयोग करने के लिए सेट है, तो उस पैरामीटर के लिए कोई मान प्रदान नहीं किया जाता है जब कोई ऐप मान प्राप्त करता है।

आपके ऐप में, निम्न प्राथमिकता सूची के अनुसार पैरामीटर मान get विधियों द्वारा लौटाए जाते हैं

  1. यदि बैकएंड से कोई मान प्राप्त किया गया था और फिर सक्रिय किया गया था, तो ऐप प्राप्त किए गए मान का उपयोग करता है। सक्रिय पैरामीटर मान लगातार हैं।
  2. यदि बैकएंड से कोई मान प्राप्त नहीं किया गया था, या यदि Remote Config बैकएंड से प्राप्त मान सक्रिय नहीं किए गए हैं, तो ऐप इन-ऐप डिफ़ॉल्ट मान का उपयोग करता है।

    डिफ़ॉल्ट मान प्राप्त करने और सेट करने के बारे में अधिक जानकारी के लिए, दूरस्थ कॉन्फ़िगरेशन टेम्पलेट डिफ़ॉल्ट डाउनलोड करें देखें।

  3. यदि कोई इन-ऐप डिफ़ॉल्ट मान सेट नहीं किया गया है, तो ऐप एक स्थिर प्रकार के मान का उपयोग करता है (जैसे कि int के लिए 0 और boolean के लिए false )।

यह ग्राफ़िक संक्षेप में बताता है कि कैसे Remote Config बैकएंड और आपके ऐप में पैरामीटर मानों को प्राथमिकता दी जाती है:

उपरोक्त आदेशित सूचियों द्वारा वर्णित प्रवाह को दर्शाने वाला आरेख

पैरामीटर मान डेटा प्रकार

Remote Config आपको प्रत्येक पैरामीटर के लिए डेटा प्रकार चुनने की अनुमति देता है, और टेम्पलेट अपडेट से पहले उस प्रकार के विरुद्ध सभी सर्वर-साइड मानों को मान्य करता है। डेटा प्रकार संग्रहीत किया जाता है और getRemoteConfig अनुरोध पर लौटाया जाता है।

वर्तमान में समर्थित प्रकार हैं:

  • String
  • Boolean
  • Number
  • JSON

फायरबेस कंसोल यूआई में पैरामीटर कुंजी के बगल में एक ड्रॉपडाउन से डेटा प्रकार का चयन किया जा सकता है। REST में API प्रकारों को पैरामीटर ऑब्जेक्ट के भीतर value_type फ़ील्ड का उपयोग करके सेट किया जा सकता है।

पैरामीटर समूह

Remote Config आपको अधिक संगठित UI और मानसिक मॉडल के लिए पैरामीटर को एक साथ समूहित करने की अनुमति देता है।

उदाहरण के लिए, मान लें कि आपको एक नई लॉगिन सुविधा शुरू करते समय तीन अलग-अलग प्रमाणन प्रकारों को सक्षम या अक्षम करने की आवश्यकता है। Remote Config के साथ, आप वांछित प्रकार को सक्षम करने के लिए तीन पैरामीटर बना सकते हैं, और फिर उन्हें "नया लॉगिन" नामक समूह में व्यवस्थित कर सकते हैं, जिसमें उपसर्ग या विशेष सॉर्टिंग जोड़ने की कोई आवश्यकता नहीं है।

आप Firebase कंसोल या Remote Config REST API का उपयोग करके पैरामीटर समूह बना सकते हैं। आपके द्वारा बनाए गए प्रत्येक पैरामीटर समूह का आपके Remote Config टेम्पलेट में एक अद्वितीय नाम होता है। पैरामीटर समूह बनाते समय ध्यान रखें:

  • पैरामीटर्स को किसी भी समय केवल एक समूह में शामिल किया जा सकता है, और पैरामीटर कुंजी अभी भी सभी पैरामीटरों में अद्वितीय होनी चाहिए।
  • पैरामीटर समूह के नाम 256 वर्णों तक सीमित हैं।
  • यदि आप REST API और Firebase कंसोल दोनों का उपयोग करते हैं, तो सुनिश्चित करें कि प्रकाशन पर पैरामीटर समूहों को संभालने के लिए कोई भी REST API लॉजिक अपडेट किया गया है।

Firebase कंसोल का उपयोग करके पैरामीटर समूह बनाएं या संशोधित करें

आप फायरबेस कंसोल के पैरामीटर्स टैब में पैरामीटर्स को ग्रुप कर सकते हैं। समूह बनाने या संशोधित करने के लिए:

  1. समूह प्रबंधित करें चुनें.
  2. उन पैरामीटर के लिए चेकबॉक्स चुनें जिन्हें आप जोड़ना चाहते हैं और समूह में ले जाएं चुनें.
  3. एक मौजूदा समूह का चयन करें, या नाम और विवरण दर्ज करके और नया समूह बनाएं का चयन करके एक नया समूह बनाएं । आपके द्वारा किसी समूह को सहेजने के बाद, यह परिवर्तन प्रकाशित करें बटन का उपयोग करके प्रकाशित होने के लिए उपलब्ध होता है।

प्रोग्रामेटिक रूप से समूह बनाएं

Remote Config REST API पैरामीटर समूह बनाने और प्रकाशित करने का एक स्वचालित तरीका प्रदान करता है। यह मानते हुए कि आप 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 कंसोल में समर्थित हैं। समतुल्य कार्यप्रणाली Remote Config REST API में उपलब्ध है, जैसा कि सशर्त अभिव्यक्ति संदर्भ में विस्तृत है।

नियम प्रकार ऑपरेटर मान टिप्पणी
अनुप्रयोग == अपने Firebase प्रोजेक्ट से जुड़े ऐप्स के लिए ऐप आईडी की सूची में से चुनें। जब आप फायरबेस में एक ऐप जोड़ते हैं, तो आप एक बंडल आईडी या एंड्रॉइड पैकेज नाम दर्ज करते हैं जो एक विशेषता को परिभाषित करता है जो रिमोट कॉन्फ़िगरेशन नियमों में ऐप आईडी के रूप में सामने आता है।

इस विशेषता का उपयोग इस प्रकार करें:
  • Apple प्लेटफ़ॉर्म के लिए: ऐप के CFBundleIdentifier का उपयोग करें। आप Xcode में अपने ऐप के प्राथमिक लक्ष्य के लिए सामान्य टैब में बंडल पहचानकर्ता पा सकते हैं।
  • Android के लिए: ऐप के applicationId का उपयोग करें। आप applicationId को अपने ऐप-लेवल build.gradle फ़ाइल में पा सकते हैं।
एप्लिकेशन वेरीज़न स्ट्रिंग मानों के लिए:
बिल्कुल मेल खाता है,
रोकना,
शामिल नहीं है,
नियमित अभिव्यक्ति

संख्यात्मक मानों के लिए:
=, ≠, >, ≥, <, ≤

लक्षित करने के लिए अपने ऐप के संस्करण (संस्करणों) को निर्दिष्ट करें।

इस नियम का उपयोग करने से पहले, आपको अपने Firebase प्रोजेक्ट से जुड़े Android/Apple ऐप का चयन करने के लिए ऐप आईडी नियम का उपयोग करना होगा।

Apple प्लेटफ़ॉर्म के लिए: ऐप के CFBundleShortVersionString का उपयोग करें।

नोट: सुनिश्चित करें कि आपका ऐप्पल ऐप फायरबेस ऐप्पल प्लेटफॉर्म एसडीके संस्करण 6.24.0 या उससे ऊपर का उपयोग कर रहा है, क्योंकि CFBundleShortVersionString पिछले संस्करणों में नहीं भेजा जा रहा है ( रिलीज़ नोट्स देखें)।

Android के लिए: ऐप के versionName का उपयोग करें।

इस नियम के लिए स्ट्रिंग की तुलना केस-संवेदी है। सटीक मिलान का उपयोग करते समय, इसमें शामिल है, इसमें शामिल नहीं है , या रेगुलर एक्सप्रेशन ऑपरेटर का उपयोग करते समय, आप एकाधिक मानों का चयन कर सकते हैं।

रेगुलर एक्सप्रेशन ऑपरेटर का उपयोग करते समय, आप RE2 स्वरूप में रेगुलर एक्सप्रेशन बना सकते हैं। आपकी रेगुलर एक्सप्रेशन लक्ष्य संस्करण स्ट्रिंग के सभी या कुछ भाग से मेल खा सकती है। आप लक्ष्य स्ट्रिंग की शुरुआत, अंत या पूरी तरह से मिलान करने के लिए ^ और $ एंकर का भी उपयोग कर सकते हैं।

निर्माण संख्या स्ट्रिंग मानों के लिए:
बिल्कुल मेल खाता है,
रोकना,
शामिल नहीं है,
नियमित अभिव्यक्ति

संख्यात्मक मानों के लिए:
=, ≠, >, ≥, <, ≤

लक्षित करने के लिए अपने ऐप के बिल्ड निर्दिष्ट करें।

इस नियम का उपयोग करने से पहले, आपको अपने Firebase प्रोजेक्ट से जुड़े Apple या Android ऐप का चयन करने के लिए ऐप आईडी नियम का उपयोग करना होगा।

यह ऑपरेटर केवल Apple और Android ऐप्स के लिए उपलब्ध है। यह Apple के लिए ऐप के CFBundleVersion और Android के लिए versionCode से मेल खाता है। इस नियम के लिए स्ट्रिंग की तुलना केस-संवेदी है।

सटीक मिलान का उपयोग करते समय, इसमें शामिल है, इसमें शामिल नहीं है , या रेगुलर एक्सप्रेशन ऑपरेटर का उपयोग करते समय, आप एकाधिक मानों का चयन कर सकते हैं।

रेगुलर एक्सप्रेशन ऑपरेटर का उपयोग करते समय, आप RE2 स्वरूप में रेगुलर एक्सप्रेशन बना सकते हैं। आपकी रेगुलर एक्सप्रेशन लक्ष्य संस्करण स्ट्रिंग के सभी या कुछ भाग से मेल खा सकती है। आप लक्ष्य स्ट्रिंग की शुरुआत, अंत या पूरी तरह से मिलान करने के लिए ^ और $ एंकर का भी उपयोग कर सकते हैं।

प्लैटफ़ॉर्म == आईओएस
एंड्रॉयड
वेब
ऑपरेटिंग सिस्टम ==

लक्षित करने के लिए ऑपरेटिंग सिस्टम निर्दिष्ट करें।

इस नियम का उपयोग करने से पहले, आपको अपने फायरबेस प्रोजेक्ट से जुड़े वेब ऐप का चयन करने के लिए ऐप आईडी नियम का उपयोग करना होगा।

यदि ऑपरेटिंग सिस्टम और इसका संस्करण निर्दिष्ट सूची में लक्ष्य मान से मेल खाता है, तो यह नियम किसी दिए गए वेब ऐप इंस्टेंस के लिए true का मूल्यांकन करता है।
ब्राउज़र ==

लक्षित करने के लिए ब्राउज़र निर्दिष्ट करें।

इस नियम का उपयोग करने से पहले, आपको अपने फायरबेस प्रोजेक्ट से जुड़े वेब ऐप का चयन करने के लिए ऐप आईडी नियम का उपयोग करना होगा।

यदि ब्राउज़र और इसका संस्करण निर्दिष्ट सूची में लक्ष्य मान से मेल खाता है, तो यह नियम किसी दिए गए वेब ऐप इंस्टेंस के लिए true का मूल्यांकन करता है।
उपकरण श्रेणी है या नही यह गतिमान यह नियम मूल्यांकन करता है कि आपके वेब ऐप तक पहुँचने वाला उपकरण मोबाइल है या गैर-मोबाइल (डेस्कटॉप या कंसोल)। यह नियम प्रकार केवल वेब ऐप्स के लिए उपलब्ध है।
बोली में है एक या अधिक भाषाओं का चयन करें। यह नियम किसी दिए गए ऐप इंस्टेंस के लिए true का मूल्यांकन करता है यदि वह ऐप इंस्टेंस किसी डिवाइस पर स्थापित है जो सूचीबद्ध भाषाओं में से एक का उपयोग करता है।
देश/क्षेत्र में है एक या अधिक क्षेत्रों या देशों का चयन करें। यह नियम किसी दिए गए ऐप इंस्टेंस के लिए true का मूल्यांकन करता है यदि इंस्टेंस सूचीबद्ध क्षेत्रों या देशों में से किसी में है। डिवाइस देश कोड अनुरोध में डिवाइस के आईपी पते या फायरबेस एनालिटिक्स द्वारा निर्धारित देश कोड का उपयोग करके निर्धारित किया जाता है (यदि एनालिटिक्स डेटा फायरबेस के साथ साझा किया जाता है)।
उपयोगकर्ता दर्शक कम से कम एक शामिल है Google Analytics ऑडियंस की सूची में से एक या अधिक का चयन करें जिसे आपने अपने प्रोजेक्ट के लिए सेट किया है।

इस नियम के लिए आपके फायरबेस प्रोजेक्ट से जुड़े ऐप का चयन करने के लिए ऐप आईडी नियम की आवश्यकता होती है।

नोट: क्योंकि कई Analytics ऑडियंस इवेंट या उपयोगकर्ता प्रॉपर्टी द्वारा परिभाषित किए जाते हैं, जो ऐप उपयोगकर्ताओं के कार्यों पर आधारित हो सकते हैं, किसी दिए गए ऐप इंस्टेंस के लिए ऑडियंस नियम में उपयोगकर्ता को प्रभावी होने में कुछ समय लग सकता है।

उपयोगकर्ता संपत्ति स्ट्रिंग मानों के लिए:
रोकना,
शामिल नहीं है,
बिल्कुल मेल खाता है,
नियमित अभिव्यक्ति

संख्यात्मक मानों के लिए:
=, ≠, >, ≥, <, ≤

नोट: क्लाइंट पर, आप उपयोगकर्ता गुणों के लिए केवल स्ट्रिंग मान सेट कर सकते हैं। संख्यात्मक ऑपरेटरों का उपयोग करने वाली स्थितियों के लिए, रिमोट कॉन्फ़िगरेशन संबंधित उपयोगकर्ता संपत्ति के मान को एक पूर्णांक/फ्लोट में परिवर्तित करता है।
उपलब्ध Google Analytics उपयोगकर्ता संपत्तियों की सूची में से चयन करें। यह जानने के लिए कि आप अपने उपयोगकर्ता आधार के बहुत विशिष्ट सेगमेंट के लिए अपने ऐप को अनुकूलित करने के लिए उपयोगकर्ता गुणों का उपयोग कैसे कर सकते हैं, रिमोट कॉन्फ़िग और उपयोगकर्ता गुण देखें।

उपयोगकर्ता गुणों के बारे में अधिक जानने के लिए, निम्न मार्गदर्शिकाएँ देखें:

सटीक मिलान का उपयोग करते समय, इसमें शामिल है, इसमें शामिल नहीं है या रेगुलर एक्सप्रेशन ऑपरेटर का उपयोग करते समय, आप एकाधिक मानों का चयन कर सकते हैं।

रेगुलर एक्सप्रेशन ऑपरेटर का उपयोग करते समय, आप RE2 स्वरूप में रेगुलर एक्सप्रेशन बना सकते हैं। आपकी रेगुलर एक्सप्रेशन लक्ष्य संस्करण स्ट्रिंग के सभी या कुछ भाग से मेल खा सकती है। आप लक्ष्य स्ट्रिंग की शुरुआत, अंत या पूरी तरह से मिलान करने के लिए ^ और $ एंकर का भी उपयोग कर सकते हैं।

ध्यान दें: रिमोट कॉन्फिग की स्थिति बनाते समय स्वचालित रूप से एकत्रित उपयोगकर्ता गुण वर्तमान में उपलब्ध नहीं हैं।
यादृच्छिक प्रतिशतक में उपयोगकर्ता <=, > 0-100

उपयोगकर्ताओं (ऐप इंस्टेंसेस) को समूहों में विभाजित करने के लिए <= और > ऑपरेटरों का उपयोग करते हुए, ऐप इंस्टेंस के यादृच्छिक नमूने (.0001% जितना छोटा नमूना आकार के साथ) में परिवर्तन लागू करने के लिए इस फ़ील्ड का उपयोग करें।

उस प्रोजेक्ट में परिभाषित एक कुंजी के अनुसार, प्रत्येक ऐप इंस्टेंस को लगातार यादृच्छिक पूर्ण या आंशिक संख्या में मैप किया जाता है। एक नियम डिफ़ॉल्ट कुंजी (Firebase कंसोल में DEF के रूप में दिखाया गया) का उपयोग करेगा जब तक कि आप दूसरी कुंजी का चयन या निर्माण नहीं करते। आप इस कुंजी फ़ील्ड का उपयोग करके यादृच्छिक उपयोगकर्ताओं को साफ़ करके डिफ़ॉल्ट कुंजी का उपयोग करने के लिए नियम वापस कर सकते हैं। आप दी गई प्रतिशत सीमाओं के भीतर एक ही ऐप इंस्टेंस को लगातार संबोधित करने के लिए नियमों में एक ही कुंजी का उपयोग कर सकते हैं। या, आप एक नई कुंजी बनाकर किसी दी गई प्रतिशत सीमा के लिए बेतरतीब ढंग से असाइन किए गए ऐप इंस्टेंस के नए समूह का चयन कर सकते हैं।

For example, to create two related conditions that each apply to a non-overlapping 5% of an app's users, you could have one condition include a <= 5% rule, and another condition include both a > 5% rule and a <= 10% rule. To make it possible for some users to randomly appear in both groups, use different keys for the rules in each condition.

Imported segment is in Select one or more imported segment. This rule requires setting up custom imported segments .
Date/Time Before, After A specified date and time, either in the device timezone or a specified timezone such as "(GMT+11) Sydney time." Compares the current time to the device fetch time.
First open Before, After A specified date and time, in the specified timezone.

Matches users who first open the targeted app within the specified time range.

Requires the following SDKs:

  • Firebase SDK for Google Analytics
  • Apple platforms SDK v9.0.0+ or Android SDK v21.1.1+ (Firebase BoM v30.3.0+)

Installation ID is in Specify one or more Installation IDs (up to 50) to target. This rule evaluates to true for a given installation if that installation's ID is in the comma-separated list of values.

To learn how you can get installation IDs, see Retrieve client identifiers .

Searching parameters and conditions

You can search your project's parameter keys, parameter values, and conditions from the Firebase console using the search box at the top of the Remote Config Parameters tab.

Limits on parameters and conditions

Within a Firebase project, you can have up to 2000 parameters, and up to 500 conditions. Parameter keys can be up to 256 characters long, must start with an underscore or English letter character (AZ, az), and may also include numbers. The total length of parameter value strings within a project cannot exceed 1,000,000 characters.

Viewing changes to parameters and conditions

You can view the latest changes to your Remote Config templates from the Firebase console . For each individual parameter and condition, you can:

  • View the name of the user who last modified the parameter or condition.

  • If the change occurred within the same day, view the number of minutes or hours that have elapsed since the change was published to the active Remote Config template.

  • If the change occurred one or more days in the past, view the date when the change was published to the active Remote Config template.

Parameter updates

On the Remote Config Parameters page, the Last published column shows the last user who modified each parameter and the last publish date for the change:

  • To view change metadata for grouped parameters, expand the parameter group.

  • To sort in ascending or descending order by publish date, click the Last published column label.

Condition updates

On the Remote Config Conditions page, you can see the last user who modified the condition and the date they modified it next to Last modified beneath each condition.

Next steps

To get started configuring your Firebase project, see Set up a Firebase Remote Config Project .