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

फायरबेस रिमोट कॉन्फिग के साथ आरंभ करें

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


आप अपने ऐप में मापदंडों को परिभाषित करने और क्लाउड में उनके मूल्यों को अपडेट करने के लिए Firebase Remote Config का उपयोग कर सकते हैं, जिससे आप ऐप अपडेट को वितरित किए बिना अपने ऐप के स्वरूप और व्यवहार को संशोधित कर सकते हैं।

Remote Config लाइब्रेरी का उपयोग इन-ऐप डिफ़ॉल्ट पैरामीटर मानों को संग्रहीत करने के लिए किया जाता है, Remote Config बैकएंड से अपडेट किए गए पैरामीटर मानों को प्राप्त करें, और आपके ऐप पर प्राप्त किए गए मानों को उपलब्ध कराने पर नियंत्रण करें। अधिक जानने के लिए, रिमोट कॉन्फिग लोडिंग रणनीतियों को देखें।

यह गाइड आपको आरंभ करने के चरणों के माध्यम से चलता है और कुछ नमूना कोड प्रदान करता है, जो सभी फायरबेस / क्विकस्टार्ट-यूनिटी गिटहब रिपॉजिटरी से क्लोन या डाउनलोड करने के लिए उपलब्ध है।

चरण 1: अपने ऐप में रिमोट कॉन्फिग जोड़ें

इससे पहले कि आप Remote Config का उपयोग कर सकें, आपको निम्न की आवश्यकता होगी:

  • अपनी एकता परियोजना को पंजीकृत करें और इसे फायरबेस का उपयोग करने के लिए कॉन्फ़िगर करें।

    • यदि आपकी एकता परियोजना पहले से ही फायरबेस का उपयोग करती है, तो यह पहले से पंजीकृत है और फायरबेस के लिए कॉन्फ़िगर किया गया है।

    • यदि आपके पास यूनिटी प्रोजेक्ट नहीं है, तो आप एक नमूना ऐप डाउनलोड कर सकते हैं।

  • अपने यूनिटी प्रोजेक्ट में Firebase Unity SDK (विशेष रूप से, FirebaseRemoteConfig.unitypackage ) जोड़ें।

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

चरण 2: इन-ऐप डिफ़ॉल्ट पैरामीटर मान सेट करें

आप Remote Config ऑब्जेक्ट में इन-एप डिफ़ॉल्ट पैरामीटर मान सेट कर सकते हैं, ताकि आपका ऐप Remote Config बैकएंड से कनेक्ट होने से पहले अपेक्षित व्यवहार करे, और ताकि बैकएंड में कोई भी सेट न होने पर डिफ़ॉल्ट मान उपलब्ध हों।

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

(गैर-स्ट्रिंग गुणों को संपत्ति के प्रकार में परिवर्तित कर दिया जाएगा जब SetDefaultsAsync() कहा जाता है)।

System.Collections.Generic.Dictionary<string, object> defaults =
  new System.Collections.Generic.Dictionary<string, object>();

// These are the values that are used if we haven't fetched data from the
// server
// yet, or if we ask for values that the server doesn't have:
defaults.Add("config_test_string", "default local string");
defaults.Add("config_test_int", 1);
defaults.Add("config_test_float", 1.0);
defaults.Add("config_test_bool", false);

Firebase.RemoteConfig.FirebaseRemoteConfig.DefaultInstance.SetDefaultsAsync(defaults)
  .ContinueWithOnMainThread(task => {

चरण 3: अपने ऐप में उपयोग करने के लिए पैरामीटर मान प्राप्त करें

अब आप Remote Config ऑब्जेक्ट से पैरामीटर मान प्राप्त कर सकते हैं। यदि आप Remote Config बैकएंड में मान सेट करते हैं, उन्हें प्राप्त करते हैं, और फिर उन्हें सक्रिय करते हैं, तो वे मान आपके ऐप के लिए उपलब्ध होते हैं। अन्यथा, आपको SetDefaultsAsync() का उपयोग करके इन-ऐप पैरामीटर मान कॉन्फ़िगर किए जाते हैं।

इन मानों को प्राप्त करने के लिए, पैरामीटर कुंजी को एक तर्क के रूप में प्रदान करते हुए GetValue() का उपयोग करें। यह एक ConfigValue लौटाता है, जिसमें मान को विभिन्न आधार प्रकारों में बदलने के गुण होते हैं।

चरण 4: अपने ऐप को फायरबेस कंसोल में कनेक्ट करें

Firebase कंसोल में, अपने ऐप को अपने Firebase प्रोजेक्ट में जोड़ें।

चरण 5: पैरामीटर मान सेट करें

  1. Firebase कंसोल में, अपना प्रोजेक्ट खोलें।
  2. Remote Config डैशबोर्ड देखने के लिए मेनू से Remote Config चुनें।
  3. पैरामीटर को उन्हीं नामों से परिभाषित करें जिन्हें आपने अपने ऐप में परिभाषित किया था। प्रत्येक पैरामीटर के लिए, आप एक डिफ़ॉल्ट मान सेट कर सकते हैं (जो अंततः इन-ऐप डिफ़ॉल्ट मान को ओवरराइड कर देगा) और सशर्त मान। अधिक जानने के लिए, रिमोट कॉन्फ़िगरेशन पैरामीटर और शर्तें देखें।

चरण 6: मान प्राप्त करें और सक्रिय करें (आवश्यकतानुसार)

Remote Config बैकएंड से पैरामीटर मान प्राप्त करने के लिए, FetchAsync() विधि को कॉल करें। आपके द्वारा बैकएंड पर सेट किया गया कोई भी मान Remote Config ऑब्जेक्ट में लाया और कैश किया जाता है।

// Start a fetch request.
// FetchAsync only fetches new data if the current data is older than the provided
// timespan.  Otherwise it assumes the data is "recent enough", and does nothing.
// By default the timespan is 12 hours, and for production apps, this is a good
// number. For this example though, it's set to a timespan of zero, so that
// changes in the console will always show up immediately.
public Task FetchDataAsync() {
  DebugLog("Fetching data...");
  System.Threading.Tasks.Task fetchTask =
  Firebase.RemoteConfig.FirebaseRemoteConfig.DefaultInstance.FetchAsync(
      TimeSpan.Zero);
  return fetchTask.ContinueWithOnMainThread(FetchComplete);
}

FetchAsync() के माध्यम से प्राप्त किए गए मान स्थानीय रूप से कैश किए जाते हैं जब फ़ेच पूरा हो जाता है, लेकिन ActivateFetched() लागू होने तक उपलब्ध नहीं कराया जाता है। चूंकि FetchAsync() अतुल्यकालिक रूप से निष्पादित होता है, यह आपको यह सुनिश्चित करने में सक्षम बनाता है कि नए मान मध्य-गणना में लागू नहीं होते हैं, या अन्य समय पर जो समस्या या अजीब व्यवहार का कारण हो सकते हैं।

चरण 7: (वैकल्पिक) डेवलपर मोड सक्षम करें

डेवलपर मोड को सक्षम करने के लिए, जिसका उपयोग विकास के दौरान थ्रॉटलिंग को अक्षम करने के लिए किया जा सकता है, आप FirebaseRemoteConfig.Setting गुण का उपयोग कर सकते हैं, ConfigSettings के साथ नई ConfigSettings को IsDeveloperMode पर सेट कर सकते हैं।

Next steps

If you haven't already, explore the Remote Config use cases , and take a look at some of the key concepts and advanced strategies documentation, including: