获取我们在 Firebase 峰会上发布的所有信息,了解 Firebase 可如何帮助您加快应用开发速度并满怀信心地运行应用。了解详情

रिमोट कॉन्फिग टेम्प्लेट और वर्जनिंग

रिमोट कॉन्फिग टेम्प्लेट JSON-स्वरूपित पैरामीटर और शर्तों का सर्वर-साइड सेट है जिसे आपने अपने Firebase प्रोजेक्ट के लिए बनाया है। आप फायरबेस कंसोल का उपयोग करके टेम्पलेट को संशोधित और प्रबंधित कर सकते हैं, जो पैरामीटर और शर्तें टैब में ग्राफिकल प्रारूप में टेम्पलेट की सामग्री को प्रदर्शित करता है। आप अपने कॉन्फिग को संशोधित और प्रबंधित करने के लिए रिमोट कॉन्फिग बैकएंड एपीआई या फायरबेस सीएलआई का भी उपयोग कर सकते हैं।

यहाँ एक टेम्पलेट फ़ाइल का एक उदाहरण है:

  {
    "conditions": [
      {
        "name": "ios",
        "expression": "device.os == 'ios'"
      }
    ],
    "parameters": {
      "welcome_message": {
        "defaultValue": {
          "value": "Welcome to this sample app"
        },
        "conditionalValues": {
          "ios": {
            "value": "Welcome to this sample iOS app"
          }
        }
      },
      "welcome_message_caps": {
        "defaultValue": {
          "value": "false"
        }
      },
      "header_text": {
        "defaultValue": {
          "useInAppDefault": true
        }
      }
    },
    "version": {
      "versionNumber": "28",
      "updateTime": "2020-05-14T18:39:38.994Z",
      "updateUser": {
        "email": "user@google.com"
      },
      "updateOrigin": "CONSOLE",
      "updateType": "INCREMENTAL_UPDATE"
    }
  }

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

फायरबेस कंसोल, फायरबेस सीएलआई, या रिमोट कॉन्फिग बैकएंड एपीआई के साथ, आप ये संस्करण प्रबंधन कार्य कर सकते हैं:

  • सभी संग्रहीत टेम्पलेट संस्करणों की सूची बनाएं
  • एक विशिष्ट संस्करण पुनर्प्राप्त करें
  • एक विशिष्ट संस्करण में वापस रोल करें

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

दूरस्थ कॉन्फ़िग टेम्पलेट संस्करण प्रबंधित करें

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

रिमोट कॉन्फिग टेम्पलेट के सभी संग्रहीत संस्करणों की सूची बनाएं

आप दूरस्थ कॉन्फ़िग टेम्पलेट के सभी संग्रहीत संस्करणों की सूची प्राप्त कर सकते हैं। उदाहरण के लिए:

Node.js

function listAllVersions() {
  admin.remoteConfig().listVersions()
    .then((listVersionsResult) => {
      console.log("Successfully fetched the list of versions");
      listVersionsResult.versions.forEach((version) => {
        console.log('version', JSON.stringify(version));
      });
    })
    .catch((error) => {
      console.log(error);
    });
}

जावा

ListVersionsPage page = FirebaseRemoteConfig.getInstance().listVersionsAsync().get();
while (page != null) {
  for (Version version : page.getValues()) {
    System.out.println("Version: " + version.getVersionNumber());
  }
  page = page.getNextPage();
}

// Iterate through all versions. This will still retrieve versions in batches.
page = FirebaseRemoteConfig.getInstance().listVersionsAsync().get();
for (Version version : page.iterateAll()) {
  System.out.println("Version: " + version.getVersionNumber());
}

विश्राम

curl --compressed -D headers -H "Authorization: Bearer <var>token</var>" -X GET https://firebaseremoteconfig.googleapis.com/v1/projects/<var>my-project-id</var>/remoteConfig:listVersions

फायरबेस कंसोल

पैरामीटर टैब में, ऊपर दाईं ओर प्रदर्शित "घड़ी" आइकन चुनें। यह परिवर्तन इतिहास पृष्ठ खोलता है जो दाईं ओर सूची मेनू में सभी संग्रहीत टेम्पलेट संस्करणों को सूचीबद्ध करता है।

प्रत्येक संग्रहीत संस्करण के लिए प्रदर्शित विवरण में यह जानकारी शामिल होती है कि क्या परिवर्तन कंसोल के साथ, REST API के साथ, रोलबैक से उत्पन्न हुए हैं, या क्या वे टेम्पलेट के बलपूर्वक सहेजे गए वृद्धिशील परिवर्तन थे।

फायरबेस सीएलआई

firebase remoteconfig:versions:list

लौटाए जा रहे संस्करणों की संख्या को सीमित करने के लिए --limit विकल्प का उपयोग करें। सभी संस्करण लाने के लिए '0' पास करें।

टेम्प्लेट की सूची में सभी संग्रहीत संस्करणों के लिए मेटाडेटा शामिल है, जिसमें अपडेट का समय, इसे बनाने वाले उपयोगकर्ता और चाहे वह कंसोल या आरईएसटी एपीआई के माध्यम से बनाया गया हो। यहाँ एक संस्करण तत्व का एक उदाहरण है:

{
  "versions": [{
    "version_number": "6",
    "update_time": "2022-05-12T02:38:54Z",
    "update_user": {
      "name": "Jane Smith",
      "email": "jane@developer.org",
      "imageUrl": "https://lh3.googleusercontent.com/a-/..."
    },
    "description": "One small change on the console",
    "origin": "CONSOLE",
    "update_type": "INCREMENTAL_UPDATE"
  }]

रिमोट कॉन्फिग टेम्पलेट का एक विशिष्ट संस्करण प्राप्त करें

आप दूरस्थ कॉन्फ़िग टेम्पलेट के किसी विशिष्ट संग्रहीत संस्करण को पुनः प्राप्त कर सकते हैं। उदाहरण के लिए:

Node.js

टेम्पलेट के नवीनतम संस्करण को पुनः प्राप्त करने के लिए बिना किसी तर्क के getTemplate() पास करें, या किसी विशिष्ट संस्करण को पुनः प्राप्त करने के लिए, getTemplateAtVersion() का उपयोग करें।

// Get template version: 6
admin.remoteConfig().getTemplateAtVersion('6')
  .then((template) => {
    console.log("Successfully fetched the template with ETag: " + template.etag);
  })
  .catch((error) => {
    console.log(error);
  });

जावा

Template template = FirebaseRemoteConfig.getInstance().getTemplateAtVersionAsync(versionNumber).get();
// See the ETag of the fetched template.
System.out.println("Successfully fetched the template with ETag: " + template.getETag());

विश्राम

curl --compressed -D headers -H "Authorization: Bearer <var>token</var>" -X GET https://firebaseremoteconfig.googleapis.com/v1/projects/<var>my-project-id</var>/remoteConfig?version_number=6

URL पैरामीटर ?version_number केवल GET संचालन के लिए मान्य है; आप अपडेट के लिए संस्करण संख्या निर्दिष्ट करने के लिए इसका उपयोग नहीं कर सकते हैं। ?version_number पैरामीटर के बिना एक समान प्राप्त अनुरोध वर्तमान सक्रिय टेम्पलेट को पुनः प्राप्त करेगा।

फायरबेस कंसोल

डिफ़ॉल्ट रूप से, इतिहास बदलें टैब में विवरण फलक वर्तमान सक्रिय टेम्पलेट प्रदर्शित करता है। सूची में किसी अन्य संस्करण का विवरण देखने के लिए, इसे दाएं मेनू से चुनें।

आप किसी भी गैर-चयनित संस्करण के लिए संदर्भ मेनू पर होवर करके और चयनित संस्करण के साथ तुलना करें का चयन करके वर्तमान में चयनित संस्करण और किसी अन्य संग्रहीत संस्करण का विस्तृत अंतर देख सकते हैं।

फायरबेस सीएलआई

firebase remoteconfig:get -v VERSION_NUMBER

वैकल्पिक रूप से, आप आउटपुट को -o, FILENAME के ​​साथ एक निर्दिष्ट फ़ाइल में लिख सकते हैं।

रिमोट कॉन्फिग टेम्पलेट के एक विशिष्ट संग्रहीत संस्करण में वापस रोल करें

आप टेम्पलेट के किसी भी संग्रहीत संस्करण में वापस रोल कर सकते हैं। उदाहरण के लिए:

Node.js

// Roll back to template version: 6
admin.remoteConfig().rollback('6')
  .then((template) => {
    console.log("Successfully rolled back to template version 6.");
    console.log("New ETag: " + template.etag);
  })
  .catch((error) => {
    console.log('Error trying to rollback:', e);
  })

जावा

try {
  Template template = FirebaseRemoteConfig.getInstance().rollbackAsync(versionNumber).get();
  System.out.println("Successfully rolled back to template version: " + versionNumber);
  System.out.println("New ETag: " + template.getETag());
} catch (ExecutionException e) {
  if (e.getCause() instanceof FirebaseRemoteConfigException) {
    FirebaseRemoteConfigException rcError = (FirebaseRemoteConfigException) e.getCause();
    System.out.println("Error trying to rollback template.");
    System.out.println(rcError.getMessage());
  }
}

विश्राम

एक संग्रहीत रिमोट कॉन्फिग टेम्पलेट पर वापस रोल करने के लिए, कस्टम विधि के साथ एक HTTP पोस्ट जारी करें :rollback और, अनुरोध निकाय में, लागू करने के लिए विशिष्ट संस्करण। उदाहरण के लिए:

curl --compressed -D headers -H "Authorization: Bearer <var>token</var>" -H "Content-Type: application/json" -X POST https://firebaseremoteconfig.googleapis.com/v1/projects/<var>my-project-id</var>/remoteConfig:rollback -d '{"version_number": 6}'

प्रतिक्रिया में इसके नए संस्करण मेटाडेटा के साथ, अब सक्रिय संग्रहीत टेम्पलेट की सामग्री शामिल है।

फायरबेस कंसोल

रोलबैक के लिए पात्र पिछले टेम्प्लेट संस्करणों के लिए, उस संस्करण में वापस रोल करने के लिए एक विकल्प बटन परिवर्तन इतिहास पृष्ठ के शीर्ष दाईं ओर प्रदर्शित होता है। क्लिक करें और इसकी पुष्टि केवल तभी करें जब आप सुनिश्चित हों कि आप उस संस्करण में वापस आना चाहते हैं और सभी ऐप्स और उपयोगकर्ताओं के लिए उन मानों का तुरंत उपयोग करना चाहते हैं।

फायरबेस सीएलआई

firebase remoteconfig:rollback -v VERSION_NUMBER

ध्यान दें कि यह रोलबैक ऑपरेशन प्रभावी रूप से एक नया क्रमांकित संस्करण बनाता है। उदाहरण के लिए, संस्करण 10 से संस्करण 6 में वापस रोल करने से संस्करण 6 की एक नई प्रतिलिपि प्रभावी रूप से बन जाती है, जो मूल संस्करण से केवल इस मायने में भिन्न होती है कि इसकी संस्करण संख्या 11 है। मूल संस्करण 6 अभी भी संग्रहीत है, यह मानते हुए कि यह अपनी समाप्ति तक नहीं पहुंचा है, और संस्करण 11 सक्रिय टेम्पलेट बन जाता है।

रिमोट कॉन्फिग टेम्प्लेट डाउनलोड और प्रकाशित करें

अपने स्रोत नियंत्रण में एकीकृत करने के लिए रिमोट कॉन्फिग टेम्पलेट डाउनलोड और प्रकाशित करें और सिस्टम बनाएं, कॉन्फ़िगरेशन अपडेट को स्वचालित करें, और कई परियोजनाओं में पैरामीटर और मूल्यों को सिंक में रखें।

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

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

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

ए/बी परीक्षण प्रयोग में विशेष रूप से विविधता के रूप में बनाए गए पैरामीटर और पैरामीटर मान निर्यात किए गए टेम्प्लेट में शामिल नहीं हैं।

रिमोट कॉन्फिग टेम्प्लेट को निर्यात और आयात करने के लिए:

  1. वर्तमान रिमोट कॉन्फिग टेम्पलेट डाउनलोड करें
  2. रिमोट कॉन्फिग टेम्पलेट को मान्य करें
  3. रिमोट कॉन्फिग टेम्पलेट प्रकाशित करें

वर्तमान रिमोट कॉन्फिग टेम्पलेट डाउनलोड करें

आप वर्तमान और सक्रिय रिमोट कॉन्फिग टेम्पलेट को प्रोग्रामेटिक रूप से या फायरबेस कंसोल का उपयोग करके डाउनलोड कर सकते हैं।

JSON प्रारूप में सक्रिय रिमोट कॉन्फिग टेम्पलेट डाउनलोड करने के लिए निम्नलिखित कमांड का उपयोग करें:

Node.js

function getTemplate() {
  var config = admin.remoteConfig();
  config.getTemplate()
      .then(function (template) {
        console.log('ETag from server: ' + template.etag);
        var templateStr = JSON.stringify(template);
        fs.writeFileSync('config.json', templateStr);
      })
      .catch(function (err) {
        console.error('Unable to get template');
        console.error(err);
      });
}

जावा

Template template = FirebaseRemoteConfig.getInstance().getTemplateAsync().get();
// See the ETag of the fetched template.
System.out.println("ETag from server: " + template.getETag());

विश्राम

curl --compressed -D headers -H "Authorization: Bearer token" -X GET https://firebaseremoteconfig.googleapis.com/v1/projects/my-project-id/remoteConfig -o filename

यह कमांड JSON पेलोड को एक फ़ाइल में और हेडर (ETag सहित) को एक अलग headers फ़ाइल में आउटपुट करता है।

फायरबेस कंसोल

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

फायरबेस सीएलआई

firebase remoteconfig:get -o filename

रिमोट कॉन्फिग टेम्पलेट को मान्य करें

आप अपने टेम्प्लेट अपडेट को Firebase Admin SDK या REST API का उपयोग करके प्रकाशित करने से पहले सत्यापित कर सकते हैं। जब आप फायरबेस सीएलआई या फायरबेस कंसोल से प्रकाशित करने का प्रयास करते हैं तो टेम्प्लेट भी मान्य होते हैं।

टेम्प्लेट सत्यापन प्रक्रिया त्रुटियों के लिए जाँच करती है जैसे कि मापदंडों और शर्तों के लिए डुप्लिकेट कुंजियाँ, अमान्य स्थिति नाम या कोई नहीं की स्थिति, या गलत ईटैग। उदाहरण के लिए, एक अनुरोध जिसमें कुंजियों की अनुमत संख्या-2000 से अधिक है, त्रुटि संदेश लौटाएगा, Param count too large

Node.js

function validateTemplate(template) {
  admin.remoteConfig().validateTemplate(template)
      .then(function (validatedTemplate) {
        // The template is valid and safe to use.
        console.log('Template was valid and safe to use');
      })
      .catch(function (err) {
        console.error('Template is invalid and cannot be published');
        console.error(err);
      });
}

जावा

try {
  Template validatedTemplate = FirebaseRemoteConfig.getInstance()
          .validateTemplateAsync(template).get();
  System.out.println("Template was valid and safe to use");
} catch (ExecutionException e) {
  if (e.getCause() instanceof FirebaseRemoteConfigException) {
    FirebaseRemoteConfigException rcError = (FirebaseRemoteConfigException) e.getCause();
    System.out.println("Template is invalid and cannot be published");
    System.out.println(rcError.getMessage());
  }
}

विश्राम

अपने प्रकाशन अनुरोध में URL पैरामीटर ?validate_only=true जोड़कर टेम्प्लेट अपडेट की पुष्टि करें:

curl --compressed -H "Content-Type: application/json; UTF8" -H "If-Match: last-returned-etag" -H "Authorization: Bearer token" -X PUT https://firebaseremoteconfig.googleapis.com/v1/projects/my-project-id/remoteConfig?validate_only=true -d @filename

यदि आपका टेम्प्लेट सफलतापूर्वक सत्यापित किया गया था, तो कर्ल कमांड आपके द्वारा सबमिट किया गया JSON टेम्प्लेट लौटाता है और, सहेजी गई headers फ़ाइल में, आपको एक HTTP / 2 स्थिति 200 और प्रत्यय -0 के साथ एक अपडेट किया गया ETag मिलेगा। यदि आपका टेम्प्लेट मान्य नहीं था, तो आपको JSON प्रतिक्रिया में सत्यापन त्रुटि प्राप्त होगी और आपकी headers फ़ाइल में एक गैर-200 प्रतिक्रिया होगी (और कोई ETag नहीं)।

रिमोट कॉन्फिग टेम्पलेट प्रकाशित करें

टेम्प्लेट डाउनलोड करने के बाद, JSON सामग्री में कोई भी आवश्यक परिवर्तन करने और इसे सत्यापित करने के बाद, आप इसे किसी प्रोजेक्ट में प्रकाशित कर सकते हैं।

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

प्रकाशित करने के बाद, पैरामीटर और मानों में परिवर्तन आपके ऐप्स और उपयोगकर्ताओं के लिए तुरंत उपलब्ध हो जाते हैं। यदि आवश्यक हो, तो आप पिछले संस्करण में वापस रोल कर सकते हैं।

अपना टेम्प्लेट प्रकाशित करने के लिए निम्न कमांड का उपयोग करें:

Node.js

function publishTemplate() {
  var config = admin.remoteConfig();
  var template = config.createTemplateFromJSON(
      fs.readFileSync('config.json', 'UTF8'));
  config.publishTemplate(template)
      .then(function (updatedTemplate) {
        console.log('Template has been published');
        console.log('ETag from server: ' + updatedTemplate.etag);
      })
      .catch(function (err) {
        console.error('Unable to publish template.');
        console.error(err);
      });
}

जावा

try {
  Template publishedTemplate = FirebaseRemoteConfig.getInstance()
          .publishTemplateAsync(template).get();
  System.out.println("Template has been published");
  // See the ETag of the published template.
  System.out.println("ETag from server: " + publishedTemplate.getETag());
} catch (ExecutionException e) {
  if (e.getCause() instanceof FirebaseRemoteConfigException) {
    FirebaseRemoteConfigException rcError = (FirebaseRemoteConfigException) e.getCause();
    System.out.println("Unable to publish template.");
    System.out.println(rcError.getMessage());
  }
}

विश्राम

curl --compressed -H "Content-Type: application/json; UTF8" -H "If-Match: last-returned-etag" -H "Authorization: Bearer token" -X PUT https://firebaseremoteconfig.googleapis.com/v1/projects/my-project-id/remoteConfig -d @filename

इस curl कमांड के लिए, आप फ़ाइल नाम के बाद "@" वर्ण का उपयोग करके सामग्री निर्दिष्ट कर सकते हैं।

फायरबेस कंसोल

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

दूरस्थ कॉन्फ़िगरेशन वैयक्तिकरण और शर्तें डाउनलोड किए गए टेम्प्लेट में शामिल हैं, इसलिए किसी भिन्न प्रोजेक्ट में प्रकाशित करने का प्रयास करते समय निम्नलिखित सीमाओं से अवगत होना महत्वपूर्ण है:

  • वैयक्तिकरण को परियोजना से परियोजना में आयात नहीं किया जा सकता है।

    उदाहरण के लिए, यदि आपने अपने प्रोजेक्ट में वैयक्तिकरण सक्षम किया है और एक टेम्प्लेट डाउनलोड और संपादित किया है, तो आप इसे उसी प्रोजेक्ट में प्रकाशित कर सकते हैं, लेकिन आप इसे किसी भिन्न प्रोजेक्ट में तब तक प्रकाशित नहीं कर सकते जब तक कि आप टेम्प्लेट से वैयक्तिकरण को हटा नहीं देते।

  • शर्तों को प्रोजेक्ट से प्रोजेक्ट में आयात किया जा सकता है, लेकिन ध्यान दें कि प्रकाशन से पहले लक्षित प्रोजेक्ट में कोई विशिष्ट सशर्त मान (जैसे ऐप आईडी या ऑडियंस) मौजूद होना चाहिए।

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

  • यदि आप जिस टेम्पलेट को प्रकाशित करने की योजना बना रहे हैं, उसमें ऐसी शर्तें हैं जो Google Analytics पर निर्भर करती हैं, तो लक्ष्य प्रोजेक्ट में Analytics सक्षम होना चाहिए।

रिमोट कॉन्फिग टेम्पलेट डिफॉल्ट डाउनलोड करें

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

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

आप इन फ़ाइलों को एंड्रॉइड ऐप के लिए एक्सएमएल फॉर्मेट, आईओएस ऐप के लिए प्रॉपर्टी लिस्ट (प्लिस्ट) फॉर्मेट और वेब ऐप के लिए JSON में डाउनलोड कर सकते हैं।

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

टेम्पलेट डिफ़ॉल्ट वाली फ़ाइल डाउनलोड करने के लिए:

विश्राम

curl --compressed -D headers -H "Authorization: Bearer token -X GET https://firebaseremoteconfig.googleapis.com/v1/projects/my-project-id/remoteConfig:downloadDefaults?format=file_format'

आप जिस फ़ाइल प्रारूप को डाउनलोड करना चाहते हैं, उसके आधार पर format मान के रूप में XML , PLIST , या JSON का उपयोग करें।

फायरबेस कंसोल

  1. पैरामीटर टैब में, मेनू खोलें, और डिफ़ॉल्ट मान डाउनलोड करें चुनें।
  2. संकेत मिलने पर, उस रेडियो बटन पर क्लिक करें जो उस फ़ाइल स्वरूप से संबंधित है जिसे आप डाउनलोड करना चाहते हैं, और फिर फ़ाइल डाउनलोड करें पर क्लिक करें।

अपने ऐप में रिमोट कॉन्फिग डिफ़ॉल्ट मान आयात करने के बारे में अधिक जानकारी के लिए, देखें: