Cloud Storage for Firebase की मदद से, उपयोगकर्ता जनरेट किया गया कॉन्टेंट अपलोड और शेयर किया जा सकता है. जैसे , इमेज और वीडियो. इससे, अपने ऐप्लिकेशन में रिच मीडिया कॉन्टेंट बनाया जा सकता है . आपका डेटा, a Google Cloud Storage बकेट में सेव होता है. यह an एक्साबाइट स्केल ऑब्जेक्ट स्टोरेज सलूशन है, जो ज़्यादा उपलब्धता और ग्लोबल रिडंडेंसी के साथ काम करता है. Cloud Storage for Firebase की मदद से, इन फ़ाइलों को सीधे मोबाइल डिवाइसों और वेब ब्राउज़र से सुरक्षित तरीके से अपलोड किया जा सकता है. साथ ही, यह खराब नेटवर्क पर भी आसानी से काम करता है.
शुरू करने से पहले
Cloud Storage का इस्तेमाल करने से पहले, Cloud Storage, आपको ये काम करने होंगे:
अपने C++ प्रोजेक्ट को रजिस्टर करें और उसे Firebase का इस्तेमाल करने के लिए कॉन्फ़िगर करें.
अगर आपका C++ प्रोजेक्ट पहले से ही Firebase का इस्तेमाल कर रहा है, तो वह पहले से ही Firebase के लिए रजिस्टर और कॉन्फ़िगर किया गया है.
अपने C++ प्रोजेक्ट में, Firebase C++ SDK टूल जोड़ें.
ध्यान दें कि अपने C++ प्रोजेक्ट में Firebase जोड़ने के लिए, आपको Firebase कंसोल और अपने खुले C++ प्रोजेक्ट, दोनों में टास्क पूरे करने होंगे. उदाहरण के लिए, Firebase कंसोल से कॉन्फ़िगरेशन फ़ाइलें डाउनलोड करें. इसके बाद, उन्हें अपने C++ प्रोजेक्ट में ले जाएं.
इसके अलावा, पक्का करें कि आपका Firebase प्रोजेक्ट, इस्तेमाल के हिसाब से पैसे चुकाने वाले ब्लेज़ प्लान पर हो. यह Cloud Storage for Firebase का इस्तेमाल करने की ज़रूरी शर्त है. अगर Firebase और Google Cloudआपके लिए नए हैं, तो देखें कि क्या आपके पास 300 डॉलर का मुफ़्त में आज़माने का क्रेडिट पाने की ज़रूरी शर्तें पूरी होती हैं.
डिफ़ॉल्ट Cloud Storage बकेट बनाना
Firebase कंसोल में, डेटाबेस और स्टोरेज > स्टोरेज पर जाएं.
अगर आपका प्रोजेक्ट, इस्तेमाल के हिसाब से पैसे चुकाने वाले ब्लेज़ प्लान पर नहीं है, तो आपको अपने प्रोजेक्ट को अपग्रेड करने के लिए कहा जाएगा.
शुरू करें पर क्लिक करें.
अपनी डिफ़ॉल्ट बकेट के लिए कोई जगह चुनें.
,US-CENTRAL1 , औरUS-EAST1 में मौजूद बकेट, Google Cloud Storage के "हमेशा मुफ़्त" टियर का फ़ायदा उठा सकती हैं. अन्य सभी जगहों पर मौजूद बकेट के लिए, Google Cloud Storage कीमत और इस्तेमाल के नियम लागू होते हैं.US-WEST1अगर चाहें, तो बाद में एक से ज़्यादा बकेट बनाई जा सकती हैं. हर बकेट के लिए अलग जगह चुनी जा सकती है.
अपनी डिफ़ॉल्ट बकेट के लिए, Firebase Security Rules कॉन्फ़िगर करें. डेवलपमेंट के दौरान, सार्वजनिक ऐक्सेस के लिए अपने नियम सेट अप करें.
हो गया पर क्लिक करें.
अब Firebase कंसोल में बकेट देखी जा सकती है. इसके लिए,
डेटाबेस और स्टोरेज > स्टोरेज >
फ़ाइलें टैब पर जाएं.
आपकी डिफ़ॉल्ट बकेट के नाम का फ़ॉर्मैट PROJECT_ID.firebasestorage.app
सार्वजनिक ऐक्सेस सेट अप करना
Cloud Storage for Firebase नियमों की एलानिया भाषा उपलब्ध कराता है. इसकी मदद से, यह तय किया जा सकता है कि आपका डेटा कैसे स्ट्रक्चर किया जाना चाहिए, उसे कैसे इंडेक्स किया जाना चाहिए, और आपका डेटा कब पढ़ा और लिखा जा सकता है. डिफ़ॉल्ट रूप से, Cloud Storage के लिए पढ़ने और लिखने का ऐक्सेस सीमित होता है. इसलिए, सिर्फ़ पुष्टि किए गए उपयोगकर्ता ही डेटा पढ़ या लिख सकते हैं . पुष्टि की सुविधा सेट अप किए बिना शुरू करने के लिए, सार्वजनिक ऐक्सेस के लिए अपने नियम कॉन्फ़िगर किए जा सकते हैं.Authentication
इससे Cloud Storage को कोई भी ऐक्सेस कर सकता है. यहां तक कि वे लोग भी जो आपका ऐप्लिकेशन इस्तेमाल नहीं कर रहे हैं. इसलिए, पुष्टि की सुविधा सेट अप करने के बाद, Cloud Storage के ऐक्सेस को सीमित करना न भूलें.
firebase::App बनाना और उसे शुरू करना
Cloud Storage को ऐक्सेस करने से पहले, आपको firebase::App बनाना और उसे शुरू करना होगा.
firebase::App
firebase::App के लिए हेडर फ़ाइल शामिल करें:
#include "firebase/app.h"
Android
JNI एनवायरमेंट और Java ऐक्टिविटी के jobject रेफ़रंस को आर्ग्युमेंट के तौर पर पास करके, firebase::App बनाएं:
app = App::Create(AppOptions(), jni_env, activity);
iOS+
firebase::App बनाएं:
app = App::Create(AppOptions());
firebase::storage::Storage क्लास को ऐक्सेस करना
firebase::storage::Storage
क्लास, Cloud Storage C++ SDK टूल के लिए एंट्री पॉइंट है.
Storage* storage = Storage::GetInstance(app);
अब Cloud Storage का इस्तेमाल किया जा सकता है!
अगला चरण क्या है? रेफ़रंस बनाने का तरीका जानें Cloud Storage.
ऐडवांस सेटअप
कुछ इस्तेमाल के मामलों में, अतिरिक्त सेटअप की ज़रूरत होती है:
- एक से ज़्यादा भौगोलिक इलाकों में, Cloud Storage बकेट का इस्तेमाल करना
- अलग-अलग स्टोरेज क्लास में, Cloud Storage बकेट का इस्तेमाल करना
- एक ही ऐप्लिकेशन में, पुष्टि किए गए एक से ज़्यादा उपयोगकर्ताओं के साथ Cloud Storage बकेट का इस्तेमाल करना
पहला इस्तेमाल का मामला तब सही होता है, जब दुनिया भर में आपके उपयोगकर्ता हों और आपको उनका डेटा उनके आस-पास सेव करना हो. उदाहरण के लिए, अमेरिका, यूरोप, और एशिया में बकेट बनाई जा सकती हैं, ताकि उन इलाकों के उपयोगकर्ताओं का डेटा सेव किया जा सके और इंतज़ार का समय कम किया जा सके.
दूसरा इस्तेमाल का मामला तब मददगार होता है, जब आपके पास अलग-अलग ऐक्सेस पैटर्न वाला डेटा हो. उदाहरण के लिए: मल्टी-रीजनल या रीजनल बकेट सेट अप की जा सकती है, जिसमें तस्वीरें या अक्सर ऐक्सेस किया जाने वाला अन्य कॉन्टेंट सेव किया जा सकता है. इसके अलावा, नियरलाइन या कोल्डलाइन बकेट सेट अप की जा सकती है, जिसमें उपयोगकर्ता के बैकअप या कभी-कभार ऐक्सेस किया जाने वाला अन्य कॉन्टेंट सेव किया जा सकता है.
इनमें से किसी भी इस्तेमाल के मामले में, एक से ज़्यादा Cloud Storage बकेट का इस्तेमाल किया जा सकता है.
तीसरा इस्तेमाल का मामला तब काम आता है, जब Google Drive जैसे किसी ऐप्लिकेशन को बनाया जा रहा हो. इसमें उपयोगकर्ता, एक से ज़्यादा लॉग इन किए गए खाते रख सकते हैं. जैसे, निजी खाता और ऑफ़िस का खाता. हर अतिरिक्त खाते की पुष्टि करने के लिए, Firebase ऐप्लिकेशन के कस्टम इंस्टेंस का इस्तेमाल किया जा सकता है.
एक से ज़्यादा Cloud Storage बकेट का इस्तेमाल करना
अगर आपको ऊपर दी गई डिफ़ॉल्ट Cloud Storage बकेट के अलावा किसी दूसरी बकेट का इस्तेमाल करना है या एक ही ऐप्लिकेशन में Cloud Storage की एक से ज़्यादा बकेट का इस्तेमाल करना है, तो firebase::storage::Storage का एक इंस्टेंस बनाया जा सकता है. यह इंस्टेंस, आपकी कस्टम बकेट को रेफ़रंस करता है:
// Get a non-default Cloud Storage bucket Storage* storage = Storage::GetInstance("gs://my-custom-bucket");
इंपोर्ट की गई बकेट के साथ काम करना
Firebase में, किसी मौजूदा Cloud Storage बकेट को इंपोर्ट करते समय, आपको Firebase को इन फ़ाइलों को ऐक्सेस करने की अनुमति देनी होगी. इसके लिए, gsutilGoogle Cloud SDK में शामिल gsutil टूल का इस्तेमाल करें:
gsutil -m acl ch -r -u service-PROJECT_NUMBER@gcp-sa-firebasestorage.iam.gserviceaccount.com gs://BUCKET_NAME
अपने प्रोजेक्ट का नंबर, Firebase प्रोजेक्ट के परिचय में बताए गए तरीके से देखा जा सकता है.
इससे नई बनाई गई बकेट पर कोई असर नहीं पड़ता, क्योंकि उनमें डिफ़ॉल्ट ऐक्सेस कंट्रोल सेट होता है. इससे Firebase को ऐक्सेस करने की अनुमति मिलती है. यह एक अस्थायी तरीका है. आने वाले समय में, यह प्रोसेस अपने-आप पूरी हो जाएगी.
Firebase के कस्टम ऐप्लिकेशन का इस्तेमाल करना
अगर firebase::App के कस्टम इंस्टेंस का इस्तेमाल करके, कोई ज़्यादा जटिल ऐप्लिकेशन बनाया जा रहा है, तो firebase::storage::Storage का एक इंस्टेंस बनाया जा सकता है. यह इंस्टेंस, उस ऐप्लिकेशन के साथ शुरू किया जाता है:
// Get the default bucket from a custom firebase::App Storage* storage = Storage::GetInstance(customApp); // Get a non-default bucket from a custom firebase::App Storage* storage = Storage::GetInstance(customApp, "gs://my-custom-bucket");
अगले चरण
अपना ऐप्लिकेशन लॉन्च करने की तैयारी करना:
- Google Cloud कंसोल में, अपने प्रोजेक्ट के लिए बजट अलर्ट सेट अप करना.
- इस्तेमाल और बिलिंग डैशबोर्ड पर नज़र रखना, ताकि Firebase कंसोल में आपके प्रोजेक्ट के इस्तेमाल की पूरी जानकारी मिल सके. इस्तेमाल की ज़्यादा जानकारी पाने के लिए, Cloud Storage इस्तेमाल डैशबोर्ड पर भी जाया जा सकता है.
- Firebase लॉन्च करने की चेकलिस्ट की समीक्षा करना.