फ़्लटर पर क्लाउड स्टोरेज के साथ शुरुआत करें

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

आवश्यक शर्तें

यदि आपने पहले से ऐसा नहीं किया है तो फ़्लटर के लिए फ़ायरबेस एसडीके स्थापित करें और प्रारंभ करें

एक डिफ़ॉल्ट क्लाउड स्टोरेज बकेट बनाएं

  1. फायरबेस कंसोल के नेविगेशन फलक से, स्टोरेज चुनें, फिर आरंभ करें पर क्लिक करें।

  2. सुरक्षा नियमों का उपयोग करके अपने क्लाउड स्टोरेज डेटा को सुरक्षित करने के बारे में संदेश की समीक्षा करें। विकास के दौरान, सार्वजनिक पहुंच के लिए अपने नियम स्थापित करने पर विचार करें।

  3. अपने डिफ़ॉल्ट क्लाउड स्टोरेज बकेट के लिए एक स्थान चुनें।

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

    • यदि आप किसी स्थान का चयन करने में सक्षम नहीं हैं, तो आपके प्रोजेक्ट में पहले से ही एक डिफ़ॉल्ट GCP संसाधन स्थान है। इसे या तो प्रोजेक्ट निर्माण के दौरान या किसी अन्य सेवा को सेट करते समय सेट किया गया था जिसके लिए स्थान सेटिंग की आवश्यकता होती है।

    यदि आप ब्लेज़ योजना पर हैं, तो आप कई बकेट बना सकते हैं, जिनमें से प्रत्येक का अपना स्थान होगा

  4. हो गया पर क्लिक करें.

सार्वजनिक पहुंच स्थापित करें

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

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

अपने ऐप में क्लाउड स्टोरेज SDK जोड़ें

  1. अपने फ़्लटर प्रोजेक्ट के रूट से, प्लगइन इंस्टॉल करने के लिए निम्न कमांड चलाएँ:

    flutter pub add firebase_storage
    
  2. एक बार पूरा होने पर, अपने फ़्लटर एप्लिकेशन का पुनर्निर्माण करें:

    flutter run
    
  3. अपने डार्ट कोड में प्लगइन आयात करें:

    import 'package:firebase_storage/firebase_storage.dart';
    

क्लाउड स्टोरेज सेट करें

अपने क्लाउड स्टोरेज बकेट तक पहुंचने में पहला कदम FirebaseStorage का एक उदाहरण बनाना है:

final storage = FirebaseStorage.instance;

आप क्लाउड स्टोरेज का उपयोग शुरू करने के लिए तैयार हैं!

सबसे पहले, आइए जानें कि क्लाउड स्टोरेज संदर्भ कैसे बनाएं

अग्रिम सेटअप

ऐसे कुछ उपयोग मामले हैं जिनके लिए अतिरिक्त सेटअप की आवश्यकता होती है:

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

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

इनमें से किसी भी उपयोग के मामले में, आप एकाधिक क्लाउड स्टोरेज बकेट का उपयोग करना चाहेंगे।

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

एकाधिक क्लाउड स्टोरेज बकेट का उपयोग करें

यदि आप ऊपर दिए गए डिफ़ॉल्ट के अलावा किसी अन्य क्लाउड स्टोरेज बकेट का उपयोग करना चाहते हैं, या एक ही ऐप में कई क्लाउड स्टोरेज बकेट का उपयोग करना चाहते हैं, तो आप FirebaseStorage का एक उदाहरण बना सकते हैं जो आपके कस्टम बकेट को संदर्भित करता है:

// Get a non-default Storage bucket
final storage = FirebaseStorage.instanceFor(bucket: "gs://my-custom-bucket");

आयातित बाल्टियों के साथ काम करना

मौजूदा क्लाउड स्टोरेज बकेट को फायरबेस में आयात करते समय, आपको फायरबेस को Google क्लाउड एसडीके में शामिल gsutil टूल का उपयोग करके इन फ़ाइलों तक पहुंचने की क्षमता प्रदान करनी होगी:

gsutil -m acl ch -r -u service-PROJECT_NUMBER@gcp-sa-firebasestorage.iam.gserviceaccount.com gs://YOUR-CLOUD-STORAGE-BUCKET

आप अपना प्रोजेक्ट नंबर पा सकते हैं जैसा कि फायरबेस प्रोजेक्ट्स के परिचय में बताया गया है।

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

एक कस्टम फायरबेस ऐप का उपयोग करें

यदि आप कस्टम FirebaseApp का उपयोग करके अधिक जटिल ऐप बना रहे हैं, तो आप उस ऐप के साथ प्रारंभ किए गए FirebaseStorage का एक उदाहरण बना सकते हैं:

// Use a non-default App
final storage = FirebaseStorage.instanceFor(app: customApp);

अगले कदम