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

टिनीडीबी में डेटा तक पहुँचने के लिए आप प्रत्येक डेटा आइटम को एक टैग देते हैं, जैसे आप चर नाम देते हैं। आप टैग का मान स्टोर करते हैं और प्राप्त करते हैं जैसे आप सेट करते हैं और चर मान प्राप्त करते हैं। इसे टैग-वैल्यू जोड़ी के रूप में जाना जाता है।

TinyDB.StoreValue नए मान को TinyDB में संग्रहीत करता है। आपको टैग और संग्रह करने के लिए मान निर्दिष्ट करना होगा.

TinyDB.GetValue को वर्तमान मान मिलता है।
valueIfTagNotउस टैग के साथ पहले कुछ भी संग्रहीत नहीं किए जाने की स्थिति में आवश्यक है।
बादल भंडारण
क्लाउड स्टोरेज ऐप के किसी भी उपयोगकर्ता को डेटा एक्सेस करने और साझा करने की अनुमति देता है।


ऐप आविष्कारक के पास तीन व्यवहार्य क्लाउड स्टोरेज विकल्प हैं।
CloudDB MIT ऐप आविष्कारक द्वारा प्रदान की जाने वाली एक घटक और डेटाबेस सेवा है।
CloudDB TinyDB की तरह ही काम करता है। आप टैग-मान जोड़े का उपयोग करके डेटा संग्रहीत और एक्सेस करते हैं।
CloudDB को स्टोरेज ड्रॉअर से एक्सेस किया जाता है। यह एक गैर-दृश्यमान घटक है, इसलिए जब आप इसे जोड़ते हैं तो यह स्क्रीन पर दिखाई नहीं देगा।

डेटा संग्रहीत करना TinyDB के समान ही काम करता है।
StoreValue CloudDB में नया मान संग्रहीत करता है। आपको टैग और संग्रह करने के लिए मान निर्दिष्ट करना होगा.
आप विभिन्न प्रकार के डेटा संग्रहीत कर सकते हैं। उदाहरण के लिए, इन ब्लॉकों में, highScore एक संख्या है। चैट संदेशों की एक सूची है।

डेटा प्राप्त करना TinyDB के समान काम करता है, लेकिन एक अतिरिक्त कदम के साथ। क्योंकि डेटाबेस क्लाउड में है, ऐप को मूल्य प्राप्त करने और प्रतिक्रिया की प्रतीक्षा करने के लिए पूछने की आवश्यकता है। तो डेटाबेस डेटा के साथ प्रतिक्रिया करने पर संकेत देने के लिए एक ईवेंट हैंडलर ब्लॉक की आवश्यकता होती है।
GetValue डेटाबेस को सूचित करता है कि ऐप जानकारी चाहता है। valueIfTagNotटैग के लिए सही डेटा प्रकार होना चाहिए. उदाहरण के लिए, कोई संख्या या कोई सूची.
गॉट वैल्यू डेटाबेस जानकारी के साथ प्रतिक्रिया करने के बाद ट्रिगर होता है। अगर आपके पास किसी ऐप्लिकेशन में एक से ज़्यादा टैग हैं, तो मान का इस्तेमाल करने से पहले सही टैग की जांच करने के लिए आपको if ब्लॉक करना होगा.


डेटा प्राप्त करना TinyDB के समान काम करता है, लेकिन एक अतिरिक्त कदम के साथ। क्योंकि डेटाबेस क्लाउड में है, ऐप को मूल्य प्राप्त करने और प्रतिक्रिया की प्रतीक्षा करने के लिए पूछने की आवश्यकता है। तो डेटाबेस डेटा के साथ प्रतिक्रिया करने पर संकेत देने के लिए एक ईवेंट हैंडलर ब्लॉक की आवश्यकता होती है।
GetValue डेटाबेस को सूचित करता है कि ऐप जानकारी चाहता है। valueIfTagNotटैग के लिए सही डेटा प्रकार होना चाहिए. उदाहरण के लिए, कोई संख्या या कोई सूची.
डेटाबेस द्वारा जानकारी के साथ प्रतिक्रिया करने के बाद GotValue ट्रिगर हो जाता है। अगर आपके पास किसी ऐप्लिकेशन में एक से ज़्यादा टैग हैं, तो मान का इस्तेमाल करने से पहले सही टैग की जांच करने के लिए आपको if ब्लॉक करना होगा.

स्प्रेडशीट घटक आपको Google शीट से पढ़ने और लिखने की अनुमति देता है। आपको एक Google डेवलपर खाता सेट करना होगा और अपने ऐप को दस्तावेज़ से लिंक करने के लिए कुछ चरणों का पालन करना होगा।
स्प्रेडशीट घटक भंडारण दराज में उपलब्ध है। यह एक गैर-दृश्यमान घटक है, इसलिए जब आप इसे अपने ऐप में जोड़ते हैं तो यह स्क्रीन पर दिखाई नहीं देगा।
ऐप को आपकी स्प्रेडशीट में सेल, पंक्तियों और कॉलम को पढ़ने और लिखने की अनुमति देने के लिए कई ब्लॉक उपलब्ध हैं। यह एक अच्छा विकल्प है यदि आपके पास टेबल डेटा है जिसे आप अपने ऐप से एक्सेस करना चाहते हैं। आप Google पत्रक में डेटा देख और संपादित भी कर सकते हैं, जो सहायक होता है, खासकर जब आपके ऐप का परीक्षण किया जाता है।
मेंटर टिप
सर्वोत्तम अभ्यास: हमेशा अपने डेटा का बैकअप कहीं न कहीं स्टोर करें! अपने डेटा को हटाना या गलती से बदलना बहुत आसान है, इसलिए एक अतिरिक्त प्रतिलिपि को कहीं सुरक्षित स्थान पर संग्रहीत करना सुनिश्चित करें!
ऐप आविष्कारक में आप टैग-वैल्यू जोड़ी शब्द सीखते हैं और इसका उपयोग वास्तविक जीवन कोडिंग में बहुत अधिक किया जाता है, हालांकि हम इसे कुंजी-मूल्य जोड़ी कहते हैं! अब आप जानते हैं कि विशेषज्ञ किन शब्दों का उपयोग करते हैं!
छात्रों से पूछने के लिए मार्गदर्शक प्रश्न: आपको क्या लगता है कि क्लाउड डेटा कहाँ संग्रहीत है? आप इसे google, youtube, tiktok आदि जैसी वेबसाइट पर अपलोड करते हैं लेकिन उसके बाद यह कहाँ संग्रहीत होता है? बादल कहाँ है? Google जैसी कंपनियों के पास क्लाउड में सामान स्टोर करने के लिए कंप्यूटर के साथ विशाल इमारतें हैं। तो मजाक है: "यह क्लाउड पर संग्रहीत नहीं है, बस किसी और का कंप्यूटर"। अमेज़ॅन का डेटा स्टोरेज:
AmeriCorps के समर्थन से मेंटर टिप्स प्रदान किए जाते हैं।

गतिविधि: स्टोर गेम स्कोर
उच्च स्कोर स्टोर करने के लिए त्वरित प्रश्नोत्तरी खेल को अपडेट करें
- ऐप इन्वेंटर गैलरी में स्टार्टर प्रोजेक्ट खोलें.
वीडियो में दिया गया लिंक ग़लत है! स्टार्टर प्रोजेक्ट का लिंक https://bit.ly/appinventor-quick-quiz है - इसे ऐप आविष्कारक में लोड करें ताकि आप अपनी प्रतिलिपि संपादित कर सकें।
- खिलाड़ियों के उच्च स्कोर को संग्रहीत और अपडेट करने के लिए Google शीट को अपने ऐप से लिंक करने के लिए नीचे दिए गए वीडियो के साथ अनुसरण करें।
चुनौती

अब जब आपने व्यक्तिगत उच्च स्कोर को पढ़ने, लिखने और अपडेट करने के लिए त्वरित प्रश्नोत्तरी गेम को कोडित किया है, तो क्या आप कर सकते हैं:
- सभी खिलाड़ियों के उच्च स्कोर पढ़ें और सभी खिलाड़ियों का उच्चतम स्कोर ज्ञात कीजिए
- उपयोगकर्ता को उस जानकारी की रिपोर्ट करें
- लेबल का उपयोग करना
- या इसे अलर्ट संदेश में जोड़ें
परावर्तन
यदि आप अपने ऐप के लिए डेटा स्टोर करने जा रहे हैं, तो आपको इस पाठ में सीखी गई जानकारी की आवश्यकता होगी। जैसे ही आप अपने प्रोजेक्ट के लिए अपने स्वयं के ऐप को कोड करना शुरू करते हैं, इन प्रश्नों पर विचार करें।

ऐप में,
उपयोगकर्ता के मोबाइल डिवाइस पर,
या साझा करने के लिए क्लाउड में
प्रमुख शब्दों की समीक्षा
- डेटाबेस - सूचना का एक संगठित संग्रह
- क्लाउड स्टोरेज - ऐसी जानकारी जो वेब पर संग्रहीत होती है ताकि इंटरनेट से जुड़ा कोई भी उपकरण इसे एक्सेस कर सके
- टैग-वैल्यू जोड़ी - डेटाबेस में जानकारी संग्रहीत करने और एक्सेस करने का एक तरीका
अतिरिक्त संसाधन
ऐप आविष्कारक में क्लाउड स्टोरेज की खोज के लिए यहां अधिक दस्तावेज़ और ट्यूटोरियल दिए गए हैं।
- CloudD का उपयोग करने वाला चैट ऐप बनाएं
- CloudDB का उपयोग करने वाला लॉगिन ऐप बनाएं
- Firebase को ऐप आविष्कारक से कनेक्ट करें