Android पर Firebase की फ़ोन नंबर की पुष्टि करने की सुविधा का इस्तेमाल शुरू करना

इस पेज पर, Android ऐप्लिकेशन में Firebase Phone Number Verification का इस्तेमाल शुरू करने का तरीका बताया गया है. इस सुविधा के बारे में सामान्य जानकारी पाने के लिए, खास जानकारी देखें.

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

जब आपको अपने ऐप्लिकेशन में Firebase PNV उपयोगकर्ता अनुभव बेहतर लगे, तब अपने ऐप्लिकेशन को प्रोडक्शन के लिए तैयार करने के लिए, कुछ और चरणों का पालन किया जा सकता है.

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

1. अपने ऐप्लिकेशन में Firebase PNV लाइब्रेरी जोड़ना

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

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

    // Add the dependencies for the Firebase Phone Number Verification libraries
    // When using the BoM, you don't specify versions in Firebase library dependencies
    implementation("com.google.firebase:firebase-pnv")
}

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

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

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

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

dependencies {
    // Add the dependencies for the Firebase Phone Number Verification libraries
    // When NOT using the BoM, you must specify versions in Firebase library dependencies
    implementation("com.google.firebase:firebase-pnv:16.0.0")
}

2. टेस्ट मोड में Firebase PNV लाइब्रेरी शुरू करना

  1. Firebase कंसोल फ़ोन की पुष्टि सेक्शन के जांच टैब पर, टोकन जनरेट करें बटन पर क्लिक करें.

  2. टेस्ट सेशन का इस्तेमाल करने के लिए, अपने ऐप्लिकेशन में Firebase PNV क्लाइंट को शुरू करें:

    Kotlin

    लाइब्रेरी इंपोर्ट करें:

    import com.google.firebase.pnv.FirebasePhoneNumberVerification
    

    FirebasePhoneNumberVerification क्लास का नया इंस्टेंस बनाएं और इस इंस्टेंस का इस्तेमाल सभी Firebase PNV कॉल के लिए करें. getInstance() तरीका, सिंगलटन ऑब्जेक्ट नहीं दिखाता. इसलिए, आपको इसे बनाने के बाद बनाए रखना होगा.

    val fpnv = FirebasePhoneNumberVerification.getInstance(this@MainActivity)
    

    पिछले चरण में जनरेट किए गए टोकन का इस्तेमाल करके, टेस्ट सेशन चालू करें:

    fpnv.enableTestSession("COPIED_TOKEN_STRING")
    

    आपको इस तरीके को FirebasePhoneNumberVerification के किसी इंस्टेंस पर सिर्फ़ एक बार कॉल करना होगा. इसके बाद किए गए कॉल से गड़बड़ी होगी.

टेस्ट टोकन का टीटीएल सात दिन का होता है. इस अवधि के बाद, आपको टेस्ट सेशन चालू करने के लिए नया टोकन जनरेट करना होगा. टेस्ट टोकन, फ़िज़िकल डिवाइसों और एम्युलेटर पर काम करते हैं. इसलिए, ये आपके ऐप्लिकेशन में UX की प्रोटोटाइपिंग या CI/CD में टेस्टिंग के लिए सबसे सही होते हैं.

3. सुझाया गया: देखें कि Firebase PNV काम करता है या नहीं

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

यह देखने के लिए कि डिवाइस पर यह सुविधा काम करती है या नहीं, getVerificationSupportInfo() तरीके का इस्तेमाल करें. टेस्ट सेशन चालू होने पर, यह तरीका आपके प्रोजेक्ट में चालू हर टेस्ट टोकन की सूची दिखाएगा. बाद में, अपने ऐप्लिकेशन को प्रोडक्शन में लाने के बाद, यह तरीका डिवाइस में मौजूद हर सिम के लिए नतीजे दिखाएगा.

Kotlin

// Check all SIMs for support.
fpnv.getVerificationSupportInfo()
  .addOnSuccessListener { results ->
    if (results.any { it.isSupported() }) {
      // At least one SIM is supported; okay to call getVerifiedPhoneNumber
      // (see the next step).
    } else {
      // No SIMs are supported, so fall back to SMS verification.
    }
  }
  .addOnFailureListener { e ->
    // Handle error.
  }

4. पुष्टि करने की प्रोसेस शुरू करना

Firebase PNV फ़्लो शुरू करने के लिए, Firebase PNV तरीके को कॉल करें:getVerifiedPhoneNumber()

Kotlin

fpnv.getVerifiedPhoneNumber()
  .addOnSuccessListener { result ->
    // In test mode, this phone number will have a valid country code,
    // followed by all zeros.
    val phoneNumber = result.getPhoneNumber()
    val token = result.getToken()

    // Verification successful. Send token to your backend. (See Next Steps.)
  }
  .addOnFailureListener { e ->
    // Handle failures, such as the user declining consent or a network error.
  }

getVerifiedPhoneNumber() तरीके से, फ़ोन नंबर की पुष्टि करने की पूरी प्रोसेस को पूरा किया जाता है. इसमें ये शामिल हैं:

  • Android क्रेडेंशियल मैनेजर का इस्तेमाल करके, उपयोगकर्ता से उसका फ़ोन नंबर शेयर करने की सहमति लेना.
  • Firebase PNV के बैकएंड को अनुरोध भेजा जा रहा है.
  • डिवाइस के लिए, पुष्टि किया गया फ़ोन नंबर वाला टोकन वापस भेजना (प्रोडक्शन ऐप्लिकेशन में, बिलिंग इसी समय होती है).

अगले चरण

  • इस पेज पर, यूनिफ़ाइड सिंगल-कॉल एपीआई का इस्तेमाल करके, Firebase PNV के साथ इंटिग्रेट करने का तरीका बताया गया है. एक ही तरीके से कॉल करने पर, Firebase PNV के पूरे उपयोगकर्ता फ़्लो को मैनेज किया जा सकता है. इसमें उपयोगकर्ता की सहमति लेने से लेकर, Firebase PNV के बैकएंड में ज़रूरी नेटवर्क कॉल करने तक के सभी काम शामिल हैं. इस तरीके का इस्तेमाल करके, इंटिग्रेशन के चरणों को एक ही तरीके के कॉल में कम किया जा सकता है.

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

  • अगर आपको पुष्टि किए गए फ़ोन नंबर का इस्तेमाल ऐप्लिकेशन क्लाइंट के बाहर करना है, तो आपको फ़ोन नंबर के बजाय टोकन पास करना चाहिए. इससे, इस्तेमाल करते समय टोकन की पुष्टि की जा सकेगी. Firebase PNV टोकन की पुष्टि करना लेख पढ़ें.

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