Google is committed to advancing racial equity for Black communities. See how.
इस पेज का अनुवाद Cloud Translation API से किया गया है.
Switch to English

C ++ के लिए क्लाउड स्टोरेज से शुरू करें

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

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

इससे पहले कि आप क्लाउड संग्रहण का उपयोग कर सकें, आपको निम्न करने की आवश्यकता है:

  • अपने C ++ प्रोजेक्ट को पंजीकृत करें और फायरबेस का उपयोग करने के लिए इसे कॉन्फ़िगर करें।

    यदि आपका C ++ प्रोजेक्ट पहले से ही Firebase का उपयोग करता है, तो यह पहले से ही Firebase के लिए पंजीकृत और कॉन्फ़िगर है।

  • अपने प्रोजेक्ट-लेवल build.gradle फ़ाइल में, अपने buildscript और allprojects दोनों वर्गों में Google के buildscript रिपॉजिटरी को शामिल करना सुनिश्चित करें।

  • अपने C ++ प्रोजेक्ट में Firebase C ++ SDK जोड़ें।

ध्यान दें कि आपके C ++ प्रोजेक्ट में Firebase को जोड़ने से Firebase कंसोल और आपके ओपन C ++ प्रोजेक्ट दोनों में कार्य शामिल हैं (उदाहरण के लिए, आप कंसोल से फायरबेस फाइल को डाउनलोड करते हैं, फिर उन्हें अपने C ++ प्रोजेक्ट में स्थानांतरित करें)।

एक डिफ़ॉल्ट संग्रहण बाल्टी बनाएँ

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

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

  3. अपने डिफ़ॉल्ट संग्रहण बाल्टी के लिए एक स्थान का चयन करें।

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

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

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

  4. पूर्ण क्लिक करें।

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

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

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

firebase::App बनाएँ और शुरू करें

इससे पहले कि आप संग्रहण तक पहुँच सकें, आपको firebase::App बनाना और शुरू करना होगा।

firebase::App लिए हेडर फाइल शामिल करें firebase::App :

#include "firebase/app.h"

एंड्रॉयड

firebase::App बनाएँ, JNI परिवेश और जावा गतिविधि के तर्क के रूप में jobject पास करें:

app = App::Create(AppOptions(), jni_env, activity);

आईओएस

firebase::App बनाएँ firebase::App :

app = App::Create(AppOptions());

firebase::storage::Storage वर्ग में पहुंचें

firebase::storage::Storage क्लास क्लाउड स्टोरेज C ++ SDK के लिए एंट्री पॉइंट है।

Storage* storage = Storage::GetInstance(app);

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

पहले, चलिए सीखते हैं कि Cloud Storage Reference कैसे बनाया जाता है

उन्नत व्यवस्था

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

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

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

इन उपयोग मामलों में से किसी में, आप कई भंडारण बाल्टी का उपयोग करना चाहते हैं।

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

कई भंडारण बाल्टी का उपयोग करें

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

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

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

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

gsutil -m acl ch -r -u firebase-storage@system.gserviceaccount.com:O gs://<your-cloud-storage-bucket>

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

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

यदि आप एक कस्टम firebase::App का उपयोग करके अधिक जटिल ऐप बना रहे हैं, तो आप firebase::storage::Storage का एक उदाहरण बना सकते हैं 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");

अगला कदम