Firebase Remote Config सर्वर से नए मूल्यों को कैसे और कब प्राप्त करना है और उन्हें आपके ऐप में सक्रिय करने के लिए बहुत लचीलापन प्रदान करता है, जिससे आप किसी भी दृश्यमान कॉन्फ़िगरेशन परिवर्तन के समय को नियंत्रित करके गुणवत्ता वाले अंतिम उपयोगकर्ता अनुभव को सुनिश्चित कर सकते हैं। यह गाइड कुछ लोडिंग रणनीतियों पर नज़र डालती है और आपके ऐप के लिए सबसे अच्छा विकल्प चुनने के लिए महत्वपूर्ण बातों पर चर्चा करती है।
रणनीति 1: लोड होने पर प्राप्त करें और सक्रिय करें
इस रणनीति में, जब आपका ऐप पहली बार Remote Config से नए मान लाने के लिए शुरू होता है और लोड होते ही उन्हें सक्रिय कर देता है, तो आपका ऐप fetchAndActivate()
को कॉल करेगा। यह सरल तरीका उन कॉन्फ़िगरेशन परिवर्तनों के लिए अच्छी तरह से काम करता है जो आपके UI में कोई नाटकीय दृश्य परिवर्तन नहीं करते हैं। इसे किसी भी स्थिति में टाला जाना चाहिए जहां आपका यूआई ध्यान देने योग्य रूप से बदल सकता है जबकि उपयोगकर्ता इसका उपयोग करने के बीच में हैं।
रणनीति 2: लोडिंग स्क्रीन के पीछे सक्रिय करें
रणनीति 1 में आई संभावित यूआई समस्या के उपाय के रूप में, आप एक लोडिंग स्क्रीन पर भरोसा कर सकते हैं। अपने ऐप को तुरंत शुरू करने के बजाय, लोडिंग स्क्रीन दिखाएं और अपने पूरा होने वाले हैंडलर में fetchAndActivate
कॉल करें। फिर उसके ठीक बाद - फिर से कॉलबैक या अधिसूचना का उपयोग करते हुए - लोडिंग स्क्रीन को खारिज कर दें और उपयोगकर्ता को अपने ऐप से बातचीत शुरू करने दें।
यदि आप इस रणनीति का उपयोग करते हैं, तो लोडिंग स्क्रीन पर टाइमआउट जोड़ने की अनुशंसा की जाती है। उपयोगकर्ताओं के लिए गुणवत्तापूर्ण ऐप स्टार्टअप अनुभव के लिए Remote Config का एक मिनट का समय समाप्त होना बहुत लंबा हो सकता है।
रणनीति 3: अगले स्टार्टअप के लिए नए मान लोड करें
आपके ऐप के अगले स्टार्टअप पर सक्रिय करने के लिए नए कॉन्फ़िगरेशन मानों को लोड करना एक प्रभावी रणनीति है। इस रणनीति में, आपका ऐप नए लाने का प्रयास करने से पहले स्टार्टअप पर प्राप्त मूल्यों को सक्रिय करता है, इस धारणा पर काम करता है कि यह पहले से ही प्राप्त हो सकता है - लेकिन अभी तक सक्रिय नहीं - नए कॉन्फ़िगरेशन मान। इस रणनीति के संचालन का क्रम है:
- स्टार्टअप पर, पहले से प्राप्त मूल्यों को तुरंत सक्रिय करें। यह आपके द्वारा पिछले सत्र में सर्वर से डाउनलोड किए गए किसी भी मान पर लागू होता है, और लगभग तात्कालिक है।
- जबकि उपयोगकर्ता आपके ऐप के साथ इंटरैक्ट करता है, डिफ़ॉल्ट न्यूनतम फ़ेच अंतराल के अनुसार नए मान प्राप्त करने के लिए एक एसिंक्रोनस कॉल शुरू करें।
- फ़ेच कॉल के लिए पूर्णता हैंडलर या कॉलबैक में, कुछ भी न करें। आपका ऐप डाउनलोड किए गए मानों को तब तक बनाए रखेगा जब तक कि आप अगली बार ऐप शुरू होने पर उन्हें सक्रिय नहीं कर देते।
इस रणनीति के साथ, उपयोगकर्ता प्रतीक्षा समय बहुत कम हो जाता है। हालांकि, नवीनतम कॉन्फ़िगरेशन देखने के लिए उपयोगकर्ता को आपके ऐप को दूसरी बार चलाना होगा। आपको इन विचारों को अपने व्यवसाय और ऐप लॉजिक के विरुद्ध संतुलित करने की आवश्यकता होगी।
विरोधी रणनीतियाँ लोड हो रही हैं
जैसा कि आप लोडिंग पेशेवरों और विपक्षों की उपरोक्त चर्चा से समझ गए होंगे, इससे बचने के लिए कुछ उपयोग पैटर्न हैं।
- जब उपयोगकर्ता यूआई देख रहा हो या उसके साथ इंटरैक्ट कर रहा हो तो यूआई के पहलुओं को अपडेट या स्विच न करें - जब तक कि आपके पास ऐसा करने के लिए मजबूत ऐप या व्यावसायिक कारण न हों, जैसे प्रचार से संबंधित विकल्पों को हटाना जो अभी समाप्त हो गया है।
- एक साथ बड़ी संख्या में लाने के अनुरोध न भेजें, जिसके परिणामस्वरूप सर्वर आपके ऐप को थ्रॉटल कर सकता है। अधिकांश उत्पादन परिदृश्यों में ऐसा होने के जोखिम कम होते हैं, लेकिन सक्रिय विकास के दौरान यह एक समस्या हो सकती है। Android और Apple प्लेटफ़ॉर्म के लिए थ्रॉटलिंग मार्गदर्शन देखें।
- दूरस्थ कॉन्फ़िग मान प्राप्त करने के लिए नेटवर्क कनेक्टिविटी पर निर्भर न रहें । इन-ऐप डिफ़ॉल्ट पैरामीटर मान सेट करें ताकि आपका ऐप हमेशा अपेक्षा के अनुरूप व्यवहार करे। डाउनलोड किए गए टेम्प्लेट डिफ़ॉल्ट का उपयोग करके आप समय-समय पर ऐप और रिमोट कॉन्फिग बैकएंड डिफ़ॉल्ट मानों को सिंक में रख सकते हैं।
अगले कदम
इन तीन बुनियादी रणनीतियों में किसी भी तरह से कॉन्फ़िगरेशन मानों को लोड करने के तरीकों की पूरी सूची शामिल नहीं है। अपनी आवश्यकताओं के आधार पर, आप वास्तविक समय में प्रचार प्रसार में वर्णित फ़ंक्शन-संचालित पृष्ठभूमि अपडेट जैसी अधिक परिष्कृत रणनीतियां तैयार कर सकते हैं।
कॉन्फ़िगरेशन मान प्राप्त करने और सक्रिय करने के लिए विशिष्ट कॉल के बारे में अधिक जानने के लिए अपने प्लेटफ़ॉर्म के लिए API संदर्भ देखें।