Firebase रिमोट कॉन्फ़िगरेशन की मदद से डेटा लोड करने की रणनीतियां

Firebase Remote Config की मदद से, सर्वर से नई वैल्यू को फ़ेच करने और उन्हें अपने ऐप्लिकेशन में चालू करने का तरीका और समय तय किया जा सकता है. इससे, आपको दिखने वाले कॉन्फ़िगरेशन में होने वाले बदलावों के समय को कंट्रोल करके, असली उपयोगकर्ता को बेहतर अनुभव देने में मदद मिलती है. आप इनका उपयोग करके ऐप्लिकेशन लॉन्च पर नए मान फे़च कर सकते हैं fetchAndActivate(), और इसका इस्तेमाल करें रीयल-टाइम Remote Config नई पैरामीटर वैल्यू को अपने-आप फ़ेच करने के लिए, पूरक तरीके के तौर पर आपकी Remote Config का नया वर्शन पब्लिश होने के बाद.

इस गाइड में, कॉन्टेंट लोड होने से जुड़ी कुछ रणनीतियों और जो आपके ऐप्लिकेशन के लिए सबसे अच्छे विकल्प को चुनने से जुड़ी ज़रूरी बातों पर चर्चा करती है.

पहली रणनीति: लोड होने पर फ़ेच और चालू करना

इस रणनीति में, जब आपका ऐप्लिकेशन पहली बार fetchAndActivate() को कॉल करेगा Remote Config से नई वैल्यू फ़ेच करना शुरू करता है और उन्हें तुरंत चालू करता है वे लोड होते हैं. कॉन्फ़िगरेशन के लिए यह आसान तरीका काफ़ी कारगर है बदलाव न होने की वजह से आपके यूज़र इंटरफ़ेस (यूआई) में किसी भी तरह का विज़ुअल बदलाव. इसे ऐसी किसी भी स्थिति में इस्तेमाल नहीं किया जाना चाहिए जहां उपयोगकर्ताओं के यूज़र इंटरफ़ेस (यूआई) का इस्तेमाल करने के दौरान, उसमें काफ़ी बदलाव हो सकता है.

जब आपका ऐप्लिकेशन, fetchAndActivate() को कॉल करेगा, तब यह पैरामीटर को सुनना शुरू कर देगा वैल्यू को रीयल टाइम में अपडेट करने के लिए, addOnConfigUpdateListener पर कॉल करें. यह तरीका पैरामीटर वैल्यू के किसी भी सर्वर-साइड अपडेट को सुनना शुरू करता है और उन्हें फ़ेच करता है अपने-आप आ जाता है. इसके बाद, लिसनर को कॉल करता है. नई रणनीति को लागू करना, एक आसान रणनीति है लिसनर में मौजूद वैल्यू. हालांकि, जैसा कि fetchAndActivate() के लिए बताया गया है, संवेदनशील यूज़र इंटरफ़ेस (यूआई) के लिए, तुरंत ऐक्टिवेट करने से बचना चाहिए.

रणनीति 2: लोड होने वाली स्क्रीन के पीछे चालू करें

पहली रणनीति में यूज़र इंटरफ़ेस (यूआई) में आने वाली संभावित समस्या के समाधान के तौर पर, लोड हो रही है. ऐप्लिकेशन को तुरंत शुरू करने के बजाय, लोडिंग दिखाएं स्क्रीन करें और अपने पूरा होने वाले हैंडलर में fetchAndActivate को कॉल करें. उसके ठीक बाद — कॉलबैक या सूचना का इस्तेमाल करके, फिर से — लोड होने वाली स्क्रीन को खारिज करें और उपयोगकर्ता को इंटरैक्ट करने की अनुमति दें आपका ऐप्लिकेशन.

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

कॉल करके रीयल-टाइम Remote Config अपडेट सुने जा रहे हैं addOnConfigUpdateListener इस रणनीति के साथ अच्छा काम करता है. इस समय लिसनर जोड़ें लोड होने वाली स्क्रीन दिखती है. इसके बाद, एक या उससे ज़्यादा पॉइंट पर activate() का इस्तेमाल करें आपका ऐप्लिकेशन जहां Remote Config वैल्यू की वजह से विज़ुअल में बहुत ज़्यादा बदलाव नहीं होंगे.

रणनीति 3: अगले स्टार्टअप के लिए नई वैल्यू लोड करें

एक असरदार रणनीति यह है कि को चालू करें. इस रणनीति में, आपका ऐप्लिकेशन चालू हो जाता है नए पैरामीटर फ़ेच करने से पहले, स्टार्टअप पर वैल्यू फ़ेच की गईं. यह माना कि इसे शायद पहले ही फ़ेच कर लिया गया है — लेकिन अभी तक चालू नहीं हुआ है — नए कॉन्फ़िगरेशन की वैल्यू. इस रणनीति के काम करने का क्रम यह है:

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

इस रणनीति की मदद से, उपयोगकर्ता को इंतज़ार करने में काफ़ी कम समय लगता है. डेटा फ़ेच करने की प्रोसेस को जोड़ना साथ ही, ऐप्लिकेशन के लाइफ़साइकल के दौरान activate() कॉल के साथ रीयल-टाइम लिसनर रणनीतियां बनाने से यह पक्का होता है कि उपयोगकर्ता आपके ऐप्लिकेशन के साथ इंटरैक्ट करने पर, उनके पास Remote Config से मिली सबसे नई वैल्यू हों.

रणनीतियां लोड हो रही हैं

लोड करने के फ़ायदे और नुकसान के बारे में ऊपर हुई चर्चा से आपको समझ आ गया होगा. इस्तेमाल के कुछ पैटर्न हैं.

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

अगले चरण

इन तीन बुनियादी रणनीतियों में, उन रणनीतियों की पूरी सूची नहीं है के तरीके बताए गए हैं. अपनी ज़रूरतों के आधार पर, आपके पास रणनीतियों का इस्तेमाल किया जा सकता है.

कॉन्फ़िगरेशन वैल्यू को फ़ेच करने और चालू करने के लिए, खास कॉल के बारे में ज़्यादा जानने के लिए, अपने प्लैटफ़ॉर्म के लिए एपीआई रेफ़रंस देखें.