Android पर Cloud Storage का इस्तेमाल शुरू करना

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

ज़रूरी शर्तें

अगर आपने पहले से ऐसा नहीं किया है, तो अपने Android प्रोजेक्ट में Firebase जोड़ें.

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

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

  2. सुरक्षा का इस्तेमाल करके Cloud Storage का डेटा सुरक्षित करने के बारे में जानकारी देने वाला मैसेज देखें नियम. डेवलपमेंट के दौरान, सार्वजनिक ऐक्सेस के लिए नियम सेट अप करें.

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

    • जगह की यह सेटिंग, आपके प्रोजेक्ट के Google Cloud Platform (GCP) के डिफ़ॉल्ट रिसॉर्स की जगह होती है. ध्यान दें कि इस जगह का इस्तेमाल आपके प्रोजेक्ट में GCP की सेवाओं के लिए किया जाएगा जिनके लिए जगह की जानकारी की सेटिंग की ज़रूरत होती है, खास तौर पर, Cloud Firestore डेटाबेस और आपके App Engine ऐप्लिकेशन (Cloud Scheduler का इस्तेमाल करने पर यह ज़रूरी है).

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

    Blaze प्लान का इस्तेमाल करने पर, एक से ज़्यादा बकेट बनाई जा सकती हैं. हर बकेट की अपनी लोकेशन होती है.

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

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

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

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

अपने ऐप्लिकेशन में Cloud Storage SDK टूल जोड़ना

अपनी मॉड्यूल (ऐप्लिकेशन-लेवल) Gradle फ़ाइल (आम तौर पर <project>/<app-module>/build.gradle.kts या <project>/<app-module>/build.gradle) में, Android के लिए Cloud Storage लाइब्रेरी की डिपेंडेंसी जोड़ें. हमारा सुझाव है कि Firebase Android BoM लाइब्रेरी के वर्शन को नियंत्रित करने के लिए.

dependencies {
    // Import the BoM for the Firebase platform
    implementation(platform("com.google.firebase:firebase-bom:33.4.0"))

    // Add the dependency for the Cloud Storage library
    // When using the BoM, you don't specify versions in Firebase library dependencies
    implementation("com.google.firebase:firebase-storage")
}

Firebase Android BoM का इस्तेमाल करने पर, आपका ऐप्लिकेशन हमेशा Firebase Android लाइब्रेरी के काम करने वाले वर्शन का इस्तेमाल करेगा.

(वैकल्पिक) BoM का इस्तेमाल करके, बिना Firebase लाइब्रेरी डिपेंडेंसी जोड़ें

अगर Firebase BoM का इस्तेमाल नहीं किया जाता है, तो आपको हर Firebase लाइब्रेरी के वर्शन की जानकारी, उसकी डिपेंडेंसी लाइन में देनी होगी.

ध्यान दें कि अगर आप अपने ऐप्लिकेशन में कई Firebase लाइब्रेरी का इस्तेमाल करते हैं, तो हम लाइब्रेरी वर्शन को मैनेज करने के लिए, BoM का इस्तेमाल करने की सलाह दी जाती है. इससे यह पक्का होता है कि सभी वर्शन साथ काम करता है.

dependencies {
    // Add the dependency for the Cloud Storage library
    // When NOT using the BoM, you must specify versions in Firebase library dependencies
    implementation("com.google.firebase:firebase-storage:21.0.1")
}
क्या आपको Kotlin के लिए कोई लाइब्रेरी मॉड्यूल चाहिए? इतने समय में शुरू होगा अक्टूबर 2023 (Firebase BoM 32.5.0), Kotlin और Java डेवलपर, दोनों मुख्य लाइब्रेरी मॉड्यूल पर निर्भर करते हैं (जानकारी के लिए, इस पहल के बारे में अक्सर पूछे जाने वाले सवाल).

Cloud Storage सेट अप करें

Cloud Storage बकेट को ऐक्सेस करने के लिए सबसे पहले, FirebaseStorage का इंस्टेंस:

Kotlin+KTX

storage = Firebase.storage

Java

FirebaseStorage storage = FirebaseStorage.getInstance();

आप Cloud Storage का इस्तेमाल करने के लिए तैयार हैं!

आइए, सबसे पहले Cloud Storage बनाने का तरीका जानते हैं रेफ़रंस.

ऐडवांस सेटअप

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

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

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

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

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

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

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

Kotlin+KTX

// Get a non-default Storage bucket
val storage = Firebase.storage("gs://my-custom-bucket")

Java

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

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

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

gsutil -m acl ch -r -u service-<project number>@gcp-sa-firebasestorage.iam.gserviceaccount.com gs://<your-cloud-storage-bucket>

अपने प्रोजेक्ट का नंबर देखने के लिए, शुरुआती जानकारी में Firebase प्रोजेक्ट.

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

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

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

Kotlin+KTX

// Get the default bucket from a custom FirebaseApp
val storage = Firebase.storage(customApp!!)

// Get a non-default bucket from a custom FirebaseApp
val customStorage = Firebase.storage(customApp, "gs://my-custom-bucket")

Java

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

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

अगले चरण