अपने ऐप को फायरबेस से कनेक्ट करें, अपने ऐप को फायरबेस से कनेक्ट करें

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

एक डेटाबेस बनाएँ

  1. Firebase कंसोल के रीयलटाइम डेटाबेस अनुभाग पर नेविगेट करें। आपको मौजूदा फायरबेस प्रोजेक्ट चुनने के लिए कहा जाएगा। डेटाबेस निर्माण कार्यप्रवाह का पालन करें।

  2. अपने फायरबेस सुरक्षा नियमों के लिए एक शुरुआती मोड चुनें:

    परीक्षण मोड

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

    वेब, Apple, या Android SDK के साथ आरंभ करने के लिए, टेस्टमोड चुनें।

    लॉक मोड

    मोबाइल और वेब क्लाइंट से सभी पढ़ने और लिखने से इनकार करता है। आपके प्रमाणित एप्लिकेशन सर्वर अभी भी आपके डेटाबेस तक पहुंच सकते हैं।

  3. डेटाबेस के लिए एक स्थान चुनें।

    डेटाबेस के स्थान के आधार पर, नए डेटाबेस के लिए URL निम्नलिखित रूपों में से एक में होगा:

    • DATABASE_NAME .firebaseio.com ( us-central1 में डेटाबेस के लिए)

    • DATABASE_NAME . REGION .firebasedatabase.app (अन्य सभी स्थानों में डेटाबेस के लिए)

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

जब आप रीयलटाइम डेटाबेस को सक्षम करते हैं, तो यह क्लाउड एपीआई मैनेजर में एपीआई को भी सक्षम करता है।

रीयलटाइम डेटाबेस SDK को अपने ऐप में जोड़ें

अपने मॉड्यूल (ऐप-लेवल) ग्रैडल फ़ाइल (आमतौर पर <project>/<app-module>/build.gradle ) में, रीयलटाइम डेटाबेस एंड्रॉइड लाइब्रेरी के लिए निर्भरता जोड़ें। हम लाइब्रेरी वर्ज़निंग को नियंत्रित करने के लिए Firebase Android BoM का उपयोग करने की सलाह देते हैं।

Kotlin+KTX

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

    // Add the dependency for the Realtime Database library
    // When using the BoM, you don't specify versions in Firebase library dependencies
    implementation 'com.google.firebase:firebase-database-ktx'
}

Firebase Android BoM का उपयोग करके, आपका ऐप हमेशा Firebase Android पुस्तकालयों के संगत संस्करणों का उपयोग करेगा।

(वैकल्पिक) BoM का उपयोग किए बिना Firebase लाइब्रेरी निर्भरताएँ जोड़ें

यदि आप Firebase BoM का उपयोग नहीं करना चुनते हैं, तो आपको प्रत्येक Firebase लाइब्रेरी संस्करण को उसकी निर्भरता रेखा में निर्दिष्ट करना होगा।

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

dependencies {
    // Add the dependency for the Realtime Database library
    // When NOT using the BoM, you must specify versions in Firebase library dependencies
    implementation 'com.google.firebase:firebase-database-ktx:20.2.2'
}

Java

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

    // Add the dependency for the Realtime Database library
    // When using the BoM, you don't specify versions in Firebase library dependencies
    implementation 'com.google.firebase:firebase-database'
}

Firebase Android BoM का उपयोग करके, आपका ऐप हमेशा Firebase Android पुस्तकालयों के संगत संस्करणों का उपयोग करेगा।

(वैकल्पिक) BoM का उपयोग किए बिना Firebase लाइब्रेरी निर्भरताएँ जोड़ें

यदि आप Firebase BoM का उपयोग नहीं करना चुनते हैं, तो आपको प्रत्येक Firebase लाइब्रेरी संस्करण को उसकी निर्भरता रेखा में निर्दिष्ट करना होगा।

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

dependencies {
    // Add the dependency for the Realtime Database library
    // When NOT using the BoM, you must specify versions in Firebase library dependencies
    implementation 'com.google.firebase:firebase-database:20.2.2'
}

रीयलटाइम डेटाबेस सुरक्षा नियम कॉन्फ़िगर करें

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

अपने डेटाबेस में लिखें

getInstance() का उपयोग करके अपने डेटाबेस का एक उदाहरण पुनर्प्राप्त करें और उस स्थान का संदर्भ लें जिसे आप लिखना चाहते हैं।

Kotlin+KTX

// Write a message to the database
val database = Firebase.database
val myRef = database.getReference("message")

myRef.setValue("Hello, World!")

Java

// Write a message to the database
FirebaseDatabase database = FirebaseDatabase.getInstance();
DatabaseReference myRef = database.getReference("message");

myRef.setValue("Hello, World!");

आप जावा ऑब्जेक्ट्स सहित डेटाबेस में डेटा प्रकारों की एक श्रृंखला को इस तरह से सहेज सकते हैं। जब आप किसी वस्तु को सहेजते हैं तो किसी भी गेटर्स की प्रतिक्रियाएँ इस स्थान के चिल्ड्रन के रूप में सहेजी जाएँगी।

अपने डेटाबेस से पढ़ें

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

इस वर्ग में onDataChange() विधि एक बार ट्रिगर हो जाती है जब श्रोता जुड़ा होता है और फिर से हर बार डेटा बदलता है, जिसमें बच्चे भी शामिल हैं।

Kotlin+KTX

// Read from the database
myRef.addValueEventListener(object : ValueEventListener {
    override fun onDataChange(dataSnapshot: DataSnapshot) {
        // This method is called once with the initial value and again
        // whenever data at this location is updated.
        val value = dataSnapshot.getValue<String>()
        Log.d(TAG, "Value is: $value")
    }

    override fun onCancelled(error: DatabaseError) {
        // Failed to read value
        Log.w(TAG, "Failed to read value.", error.toException())
    }
})

Java

// Read from the database
myRef.addValueEventListener(new ValueEventListener() {
    @Override
    public void onDataChange(@NonNull DataSnapshot dataSnapshot) {
        // This method is called once with the initial value and again
        // whenever data at this location is updated.
        String value = dataSnapshot.getValue(String.class);
        Log.d(TAG, "Value is: " + value);
    }

    @Override
    public void onCancelled(@NonNull DatabaseError error) {
        // Failed to read value
        Log.w(TAG, "Failed to read value.", error.toException());
    }
});

वैकल्पिक: प्रोगार्ड को कॉन्फ़िगर करें

ProGuard के साथ-साथ अपने ऐप में Firebase रीयलटाइम डेटाबेस का उपयोग करते समय, आपको यह विचार करने की आवश्यकता है कि आपके मॉडल ऑब्जेक्ट्स को कैसे क्रमांकित किया जाएगा और अस्पष्टता के बाद उन्हें डीसेरलाइज़ किया जाएगा। यदि आप डेटा पढ़ने और लिखने के लिए DataSnapshot.getValue(Class) या DatabaseReference.setValue(Object) का उपयोग करते हैं, तो आपको proguard-rules.pro फ़ाइल में नियम जोड़ने होंगे:

    # Add this global rule
    -keepattributes Signature

    # This rule will properly ProGuard all the model classes in
    # the package com.yourcompany.models.
    # Modify this rule to fit the structure of your app.
    -keepclassmembers class com.yourcompany.models.** {
      *;
    }

प्रोगार्ड से संबंधित प्रश्नों या मुद्दों के लिए सहायता प्राप्त करने के लिए, विशेषज्ञ से सहायता प्राप्त करने के लिए गार्डस्क्वायर समुदाय मंचों पर जाएं।

लॉन्च की तैयारी करें

अपना ऐप लॉन्च करने से पहले, हम यह सुनिश्चित करने के लिए हमारी लॉन्च चेकलिस्ट के माध्यम से चलने की सलाह देते हैं कि आपका ऐप जाने के लिए तैयार है!

यह सुनिश्चित करने में मदद के लिए ऐप चेक को सक्षम करना सुनिश्चित करें कि केवल आपके ऐप ही आपके डेटाबेस तक पहुंच सकते हैं।

अगले कदम