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:35.0.1"))

    // 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:17.0.0")
}

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

  1. Firebase कंसोल में, सुरक्षा > फ़ोन नंबर की मदद से खाते की पुष्टि करना > टेस्टिंग टैब पर जाएं.

  2. टोकन जनरेट करें पर क्लिक करें.

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

    Kotlin

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

    import com.google.firebase.pnv.FirebasePhoneNumberVerification
    

    FirebasePhoneNumberVerification क्लास का एक नया इंस्टेंस बनाएं और सभी Firebase PNV कॉल के लिए इस इंस्टेंस का इस्तेमाल करें.

    val fpnv = FirebasePhoneNumberVerification.getInstance()
    

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

    fpnv.enableTestSession("COPIED_TOKEN_STRING")
    

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

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

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

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

यह देखने के लिए कि डिवाइस पर Health Connect काम करता है या नहीं, 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 फ़्लो शुरू करने के लिए, getVerifiedPhoneNumber() तरीके को कॉल करें:

Kotlin

fpnv.getVerifiedPhoneNumber(this@MainActivity)
.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 Credential Manager का इस्तेमाल करके, उपयोगकर्ता से उसका फ़ोन नंबर शेयर करने की सहमति लेना.
  • Firebase PNV बैकएंड से अनुरोध करना.
  • डिवाइस के लिए पुष्टि किए गए फ़ोन नंबर वाला टोकन वापस करना (प्रोडक्शन ऐप्लिकेशन में, ऐसा बिलिंग के समय होता है).

अगले चरण

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

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

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

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