Android-এ Firebase ফোন নম্বর যাচাইকরণ ব্যবহার শুরু করা

Android অ্যাপে কীভাবে Firebase Phone Number Verification ব্যবহার করা শুরু করবেন তা এই পৃষ্ঠায় বর্ণনা করা হয়েছে। এই ফিচারের সাধারণ বিবরণের জন্য এক নজরে দেখুন।

এই পৃষ্ঠার ধাপগুলি অনুসরণ করে, আপনি Firebase PNV-এর জন্য ইউজার ফ্লো প্রয়োগ করা দ্রুত শুরু করতে পারবেন। পরীক্ষা করার উদ্দেশ্যে, আপনি একটি শুধুমাত্র-পরীক্ষার-জন্য টোকেন তৈরি করবেন যা একটি নকল ফোন নম্বরে সমাধান করে। এই টেস্ট টোকেন ব্যবহার করে, আপনি বিলিং অ্যাকাউন্ট বা আসল সিম সহ ডিভাইস ছাড়াই আপনার অ্যাপে Firebase PNV যোগ করা শুরু করতে পারেন।

আপনার অ্যাপে Firebase PNV ব্যবহারকারীর অভিজ্ঞতা নিয়ে আপনি সন্তুষ্ট হলে, আপনার অ্যাপ প্রোডাকশনাইজ করার জন্য কিছু অতিরিক্ত ধাপ অনুসরণ করতে পারেন।

শুরু করার আগে

১. আপনার অ্যাপে 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")
}

২. টেস্ট মোডে Firebase PNV লাইব্রেরি শুরু করুন

  1. Firebase কনসোলে, নিরাপত্তা > ফোন নম্বর যাচাইকরণ > টেস্টিং ট্যাবে যান।

  2. টোকেন জেনারেট করুন বিকল্পে ক্লিক করুন।

    IAM পৃষ্ঠা থেকে করা যেতে পারে।
  3. আপনার অ্যাপে, টেস্ট সেশন ব্যবহার করতে Firebase PNV ক্লায়েন্ট ইনিশিয়ালাইজ করুন:

    Kotlin

    লাইব্রেরি ইমপোর্ট করুন:

    import com.google.firebase.pnv.FirebasePhoneNumberVerification
    

    FirebasePhoneNumberVerification ক্লাসের নতুন ইনস্ট্যান্স তৈরি করুন এবং সব Firebase PNV কলের জন্য এই ইনস্ট্যান্স ব্যবহার করুন।

    val fpnv = FirebasePhoneNumberVerification.getInstance()
    

    আগের ধাপে আপনার জেনারেট করা টোকেন ব্যবহার করে টেস্ট সেশন চালু করুন:

    fpnv.enableTestSession("COPIED_TOKEN_STRING")
    

    আপনাকে অবশ্যই এই পদ্ধতিটি FirebasePhoneNumberVerification-এর ইনস্ট্যান্সে একবারই কল করতে হবে; পরবর্তী কলগুলি একটি ত্রুটি দেখাবে।

টেস্ট টোকেনের TTL ৭ দিন; এই সময়সীমা পেরিয়ে গেলে টেস্ট সেশন চালু করার জন্য আপনাকে নতুন টোকেন জেনারেট করতে হবে। টেস্ট টোকেন ফিজিক্যাল ডিভাইস ও এমুলেটরে কাজ করে, যা আপনার অ্যাপে UX-এর প্রোটোটাইপ তৈরি করা বা CI/CD-তে টেস্ট করার জন্য আদর্শ।

৩. সাজেস্ট করা হয়েছে: Firebase PNV কাজ করে কিনা তা চেক করুন

অ্যাপ লঞ্চ করার সময়, নম্বর এন্ট্রি UI বা ব্যাখ্যাকারী UI কখন দেখাতে হবে তা নির্ধারণ করতে আপনাকে সাহায্য করার জন্য, ডিভাইস এবং এর সিম কার্ড 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.
}

৪. যাচাইকরণ ফ্লো শুরু করুন

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 ক্রেডেনশিয়াল ম্যানেজার ব্যবহার করা।
  • Firebase PNV ব্যাকএন্ডে অনুরোধ করা হচ্ছে।
  • ডিভাইসের জন্য যাচাই করা ফোন নম্বর সহ একটি টোকেন ফেরত দেওয়া (প্রোডাকশন অ্যাপে, বিলিংয়ের সময় এটি ঘটে)।

পরবর্তী ধাপ

  • এই পৃষ্ঠায় বিস্তারিতভাবে বলা আছে যে কীভাবে ইউনিফায়েড, সিঙ্গেল-কল API ব্যবহার করে Firebase PNV-এর সাথে ইন্টিগ্রেট করতে হয়। একটিমাত্র পদ্ধতি কল করার মাধ্যমে সম্পূর্ণ Firebase PNV ব্যবহারকারীর ফ্লো ম্যানেজ করা হয়, যার মধ্যে ব্যবহারকারীর সম্মতি নেওয়া থেকে শুরু করে Firebase PNV ব্যাকএন্ডে প্রয়োজনীয় নেটওয়ার্ক কল করা পর্যন্ত সবকিছু অন্তর্ভুক্ত। এই পদ্ধতি ব্যবহার করে, আপনি ইন্টিগ্রেশন ধাপগুলি কমিয়ে একটি একক মেথড কলে পরিণত করতে পারেন।

    বেশিরভাগ ডেভেলপারদের জন্য এই API সাজেস্ট করা হয়; তবে, আপনার যদি নির্দিষ্ট প্রয়োজনীয়তা থাকে যা লাইব্রেরি দ্বারা পূরণ করা হয় না, তাহলে কাস্টম ফ্লো প্রয়োগ করার বিষয়ে তথ্যের জন্য Firebase Phone Number Verification ফ্লো কাস্টমাইজ করুন পৃষ্ঠা দেখুন।

  • আপনি যদি অ্যাপ ক্লায়েন্টের বাইরে যাচাই করা ফোন নম্বর ব্যবহার করেন, তাহলে ফোন নম্বরের পরিবর্তে টোকেন ব্যবহার করা উচিত যাতে আপনি এটি ব্যবহার করার সময় এর সত্যতা যাচাই করতে পারেন। Firebase PNV টোকেন যাচাই করুন দেখুন।

  • আপনার অ্যাপের Firebase PNV ফ্লো এবং ব্যাকএন্ড ইন্টিগ্রেশন প্রয়োগ ও পরীক্ষা করার পরে, আপনি আসল যাচাই করা ফোন নম্বর পাওয়া শুরু করার জন্য আপনার অ্যাপ প্রোডাকশনে রাখতে পারেন। প্রোডাকশন মোডে আপগ্রেড করুন দেখুন।