Unity के लिए Cloud Storage का इस्तेमाल शुरू करें

Cloud Storage for Firebase की मदद से, उपयोगकर्ता से जनरेट किया गया कॉन्टेंट अपलोड और शेयर किया जा सकता है. जैसे, इमेज और वीडियो. इससे, अपने ऐप्लिकेशन में रिच मीडिया कॉन्टेंट बनाया जा सकता है. आपका डेटा, Google Cloud Storage बकेट में सेव होता है. यह एक ऐसा ऑब्जेक्ट स्टोरेज सलूशन है जो एक्जाबाइट के स्केल पर काम करता है. इसमें डेटा को आसानी से ऐक्सेस किया जा सकता है और दुनिया भर में डेटा का बैकअप मौजूद होता है. Cloud Storage for Firebase की मदद से, इन फ़ाइलों को सीधे मोबाइल डिवाइसों और वेब ब्राउज़र से सुरक्षित तरीके से अपलोड किया जा सकता है. साथ ही, खराब नेटवर्क की समस्या को आसानी से हल किया जा सकता है.

शुरू करने से पहले

Cloud Storage का इस्तेमाल करने से पहले, आपको ये काम करने होंगे:

  • अपना Unity प्रोजेक्ट रजिस्टर करें और उसे Firebase का इस्तेमाल करने के लिए कॉन्फ़िगर करें.

    • अगर आपका Unity प्रोजेक्ट पहले से ही Firebase का इस्तेमाल करता है, तो इसका मतलब है कि वह Firebase के लिए पहले से ही रजिस्टर और कॉन्फ़िगर है.

    • अगर आपके पास कोई Unity प्रोजेक्ट नहीं है, तो सैंपल ऐप्लिकेशन डाउनलोड किया जा सकता है.

  • अपने Unity प्रोजेक्ट में Firebase Unity SDK टूल (खास तौर पर, FirebaseStorage.unitypackage) जोड़ें.

ध्यान दें कि अपने Unity प्रोजेक्ट में Firebase जोड़ने के लिए, Firebase कंसोल और अपने खुले हुए Unity प्रोजेक्ट, दोनों में टास्क शामिल होते हैं. उदाहरण के लिए, कंसोल से Firebase कॉन्फ़िगरेशन फ़ाइलें डाउनलोड करके, उन्हें अपने Unity प्रोजेक्ट में ले जाना.

यह भी पक्का करें कि आपका Firebase प्रोजेक्ट, इस्तेमाल के हिसाब से पैसे चुकाने वाले Blaze के प्राइसिंग प्लान पर हो. अगर आपने Firebase और Google Cloud का इस्तेमाल पहले कभी नहीं किया है, तो देखें कि आपके पास 300 डॉलर के क्रेडिट पाने की ज़रूरी शर्तें हैं या नहीं.

डिफ़ॉल्ट Cloud Storage बकेट बनाना

  1. Firebase कंसोल के नेविगेशन पैनल में, स्टोरेज चुनें.

    अगर आपका प्रोजेक्ट अब तक, 'इस्तेमाल के हिसाब से पैसे चुकाएं' वाले Blaze प्लान पर नहीं है, तो आपको प्रोजेक्ट को अपग्रेड करने के लिए कहा जाएगा.

  2. शुरू करें पर क्लिक करें.

  3. अपनी डिफ़ॉल्ट बकेट के लिए कोई जगह चुनें.

  4. अपनी डिफ़ॉल्ट बकेट के लिए Firebase Security Rules को कॉन्फ़िगर करें. ऐप्लिकेशन डेवलप करने के दौरान, सार्वजनिक ऐक्सेस के लिए नियम सेट अप करें.

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

अब Firebase कंसोल के Cloud Storage फ़ाइलें टैब में जाकर, बकेट देखी जा सकती है. आपकी बकेट के नाम का डिफ़ॉल्ट फ़ॉर्मैट, PROJECT_ID.firebasestorage.app है.

सार्वजनिक ऐक्सेस सेट अप करना

Cloud Storage for Firebase, नियमों की ऐसी भाषा उपलब्ध कराता है जिससे यह तय किया जा सकता है कि आपके डेटा को कैसे स्ट्रक्चर किया जाए, उसे कैसे इंडेक्स किया जाए, और आपके डेटा को कब पढ़ा और लिखा जा सकता है. डिफ़ॉल्ट रूप से, Cloud Storage को पढ़ने और उसमें बदलाव करने पर पाबंदी होती है. इसलिए, सिर्फ़ पुष्टि किए गए उपयोगकर्ता ही डेटा पढ़ सकते हैं या उसमें बदलाव कर सकते हैं. Authentication सेट अप किए बिना शुरू करने के लिए, आपके पास सार्वजनिक ऐक्सेस के लिए अपने नियम कॉन्फ़िगर करने का विकल्प है.

ऐसा करने पर, Cloud Storage को कोई भी ऐक्सेस कर सकता है. यहां तक कि वे लोग भी जो आपके ऐप्लिकेशन का इस्तेमाल नहीं करते. इसलिए, पुष्टि करने की सुविधा सेट अप करते समय, Cloud Storage पर फिर से पाबंदी लगाना न भूलें.

FirebaseStorage क्लास को ऐक्सेस करना

Firebase.Storage.FirebaseStorage, Cloud Storage Unity SDK का एंट्री पॉइंट है.

// Get a reference to the storage service, using the default Firebase App
FirebaseStorage storage = FirebaseStorage.DefaultInstance;

अब Cloud Storage का इस्तेमाल किया जा सकता है!

अगला चरण क्या है? Cloud Storage रेफ़रंस बनाने का तरीका जानें.

बेहतर सेटअप

इस्तेमाल के कुछ उदाहरणों के लिए, अलग से सेटअप करने की ज़रूरत होती है:

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

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

इस्तेमाल के इन दोनों उदाहरणों में, आपको एक से ज़्यादा Cloud Storage बकेट का इस्तेमाल करना होगा.

तीसरा इस्तेमाल का उदाहरण तब काम आता है, जब Google Drive जैसे ऐप्लिकेशन को बनाया जा रहा हो. इस ऐप्लिकेशन में, उपयोगकर्ताओं को एक से ज़्यादा खातों से लॉग इन करने की सुविधा मिलती है. उदाहरण के लिए, निजी खाता और काम से जुड़ा खाता. हर दूसरे खाते की पुष्टि करने के लिए, कस्टम Firebase ऐप्लिकेशन के इंस्टेंस का इस्तेमाल किया जा सकता है.

एक से ज़्यादा Cloud Storage बकेट का इस्तेमाल करना

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

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

इंपोर्ट की गई बकेट के साथ काम करना

किसी मौजूदा Cloud Storage बकेट को Firebase में इंपोर्ट करते समय, आपको Firebase को इन फ़ाइलों को ऐक्सेस करने की अनुमति देनी होगी. इसके लिए, Google Cloud SDK में शामिल gsutil टूल का इस्तेमाल करें:

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

Firebase प्रोजेक्ट के बारे में जानकारी में बताए गए तरीके से, अपना प्रोजेक्ट नंबर देखा जा सकता है.

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

कस्टम Firebase ऐप्लिकेशन का इस्तेमाल करना

अगर कस्टम FirebaseApp का इस्तेमाल करके, ज़्यादा जटिल ऐप्लिकेशन बनाया जा रहा है, तो उस ऐप्लिकेशन के साथ शुरू किए गए FirebaseStorage का इंस्टेंस बनाया जा सकता है:

// Get the default bucket from a custom FirebaseApp
FirebaseStorage storage = FirebaseStorage.GetInstance(customApp);

// Get a non-default bucket from a custom FirebaseApp
FirebaseStorage storageCustom = FirebaseStorage.GetInstance(customApp, "gs://my-custom-bucket");

अगले चरण