Join us for Firebase Summit on November 10, 2021. Tune in to learn how Firebase can help you accelerate app development, release with confidence, and scale with ease. Register

অ্যান্ড্রয়েডে ফায়ারবেস প্রমাণীকরণ দিয়ে শুরু করুন

আপনার অ্যাপকে ফায়ারবেসে সংযুক্ত করুন

আপনি ইতিমধ্যে থাকে, তাহলে আপনার অ্যান্ড্রয়েড প্রকল্পের Firebase যোগ

আপনার অ্যাপে Firebase প্রমাণীকরণ যোগ করুন

ব্যবহার Firebase অ্যান্ড্রয়েড Bom , আপনার মডিউল (অ্যাপ্লিকেশান-স্তর) Gradle ফাইল (সাধারণত Firebase প্রমাণীকরণ অ্যান্ড্রয়েড লাইব্রেরির জন্য নির্ভরতা ঘোষণা app/build.gradle )।

জাভা

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

    // Declare the dependency for the Firebase Authentication library
    // When using the BoM, you don't specify versions in Firebase library dependencies
    implementation 'com.google.firebase:firebase-auth'
}

ব্যবহারের Firebase অ্যান্ড্রয়েড Bom , আপনার অ্যাপ্লিকেশন সবসময় Firebase অ্যান্ড্রয়েড লাইব্রেরি সামঞ্জস্যপূর্ণ সংস্করণ ব্যবহার করবে।

(বিকল্প) Bom ব্যবহার না করেই Firebase গ্রন্থাগার নির্ভরতা ঘোষণা

আপনি যদি Firebase BoM ব্যবহার না করার সিদ্ধান্ত নেন, তাহলে আপনাকে অবশ্যই প্রতিটি Firebase লাইব্রেরির সংস্করণ তার নির্ভরতা লাইনে নির্দিষ্ট করতে হবে।

মনে রাখবেন যদি আপনি আপনার অ্যাপ্লিকেশন একাধিক Firebase লাইব্রেরি ব্যবহার করেন তখন আমরা অত্যন্ত গ্রন্থাগার সংস্করণ, যা নিশ্চিত করে যে সমস্ত সংস্করণের সামঞ্জস্যপূর্ণ পরিচালনা করতে Bom ব্যবহার সুপারিশ।

dependencies {
    // Declare the dependency for the Firebase Authentication library
    // When NOT using the BoM, you must specify versions in Firebase library dependencies
    implementation 'com.google.firebase:firebase-auth:21.0.1'
}

কোটলিন+কেটিএক্স

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

    // Declare the dependency for the Firebase Authentication library
    // When using the BoM, you don't specify versions in Firebase library dependencies
    implementation 'com.google.firebase:firebase-auth-ktx'
}

ব্যবহারের Firebase অ্যান্ড্রয়েড Bom , আপনার অ্যাপ্লিকেশন সবসময় Firebase অ্যান্ড্রয়েড লাইব্রেরি সামঞ্জস্যপূর্ণ সংস্করণ ব্যবহার করবে।

(বিকল্প) Bom ব্যবহার না করেই Firebase গ্রন্থাগার নির্ভরতা ঘোষণা

আপনি যদি Firebase BoM ব্যবহার না করার সিদ্ধান্ত নেন, তাহলে আপনাকে অবশ্যই প্রতিটি Firebase লাইব্রেরির সংস্করণ তার নির্ভরতা লাইনে নির্দিষ্ট করতে হবে।

মনে রাখবেন যদি আপনি আপনার অ্যাপ্লিকেশন একাধিক Firebase লাইব্রেরি ব্যবহার করেন তখন আমরা অত্যন্ত গ্রন্থাগার সংস্করণ, যা নিশ্চিত করে যে সমস্ত সংস্করণের সামঞ্জস্যপূর্ণ পরিচালনা করতে Bom ব্যবহার সুপারিশ।

dependencies {
    // Declare the dependency for the Firebase Authentication library
    // When NOT using the BoM, you must specify versions in Firebase library dependencies
    implementation 'com.google.firebase:firebase-auth-ktx:21.0.1'
}

একটি প্রমাণীকরণ প্রদানকারী ব্যবহার করতে, আপনাকে এটা সক্রিয় করতে হবে Firebase কনসোল । আপনার অ্যাপের জন্য ইমেইল/পাসওয়ার্ড সাইন-ইন এবং অন্য যেকোনো পরিচয় প্রদানকারী সক্ষম করতে Firebase প্রমাণীকরণ বিভাগে সাইন-ইন পদ্ধতি পদ্ধতি পৃষ্ঠায় যান।

(Alচ্ছিক) প্রোটোটাইপ এবং ফায়ারবেস লোকাল এমুলেটর স্যুট দিয়ে পরীক্ষা করুন

আপনার অ্যাপ কীভাবে ব্যবহারকারীদের প্রমাণ করে তা নিয়ে কথা বলার আগে, আসুন একটি টুল সেট করি যা আপনি প্রোটোটাইপ এবং প্রমাণীকরণ কার্যকারিতা পরীক্ষা করতে ব্যবহার করতে পারেন: ফায়ারবেস লোকাল এমুলেটর স্যুট। আপনি যদি প্রমাণীকরণ কৌশল এবং প্রদানকারীদের মধ্যে সিদ্ধান্ত নিচ্ছেন, প্রমাণীকরণ এবং ফায়ারবেস নিরাপত্তা বিধি, বা প্রোটোটাইপিং সাইন-ইন UI ডিজাইন ব্যবহার করে সরকারী এবং ব্যক্তিগত ডেটা সহ বিভিন্ন ডেটা মডেল চেষ্টা করে দেখুন, লাইভ পরিষেবাগুলি স্থাপন না করে স্থানীয়ভাবে কাজ করতে সক্ষম হওয়া একটি দুর্দান্ত ধারণা হতে পারে ।

একটি প্রমাণীকরণ এমুলেটর স্থানীয় এমুলেটর স্যুটের অংশ, যা আপনার অ্যাপকে এমুলেটেড ডাটাবেস বিষয়বস্তু এবং কনফিগার, সেইসাথে optionচ্ছিকভাবে আপনার অনুকরণকৃত প্রকল্প সম্পদ (ফাংশন, অন্যান্য ডেটাবেস এবং নিরাপত্তা নিয়ম) এর সাথে যোগাযোগ করতে সক্ষম করে।

প্রমাণীকরণ এমুলেটর ব্যবহার করে মাত্র কয়েকটি ধাপ জড়িত:

  1. এমুলেটরের সাথে সংযোগ স্থাপনের জন্য আপনার অ্যাপের টেস্ট কনফিগারে কোডের একটি লাইন যোগ করা।
  2. আপনার স্থানীয় প্রকল্প ডিরেক্টরি রুট, দৌড়ানো থেকে firebase emulators:start
  3. ইন্টারেক্টিভ প্রোটোটাইপিং এর জন্য লোকাল এমুলেটর স্যুট UI ব্যবহার করা, অথবা নন-ইন্টারেক্টিভ টেস্টিং এর জন্য প্রমাণীকরণ এমুলেটর REST API।

একটি বিস্তারিত গাইড পাওয়া যাবে কানেক্ট প্রমাণীকরণ এমুলেটর এ আপনার অ্যাপ্লিকেশান । আরো তথ্যের জন্য, দেখুন স্থানীয় এমুলেটর সুইট ভূমিকা

এখন আসুন কিভাবে ব্যবহারকারীদের প্রমাণীকরণ করা যায়।

বর্তমান লেখার অবস্থা দেখুন

  1. এর একটি দৃষ্টান্ত ঘোষণা FirebaseAuth

    জাভা

    private FirebaseAuth mAuth;

    কোটলিন+কেটিএক্স

    private lateinit var auth: FirebaseAuth
  2. ইন onCreate() পদ্ধতি, আরম্ভ FirebaseAuth উদাহরণস্বরূপ।

    জাভা

    // Initialize Firebase Auth
    mAuth = FirebaseAuth.getInstance();

    কোটলিন+কেটিএক্স

    // Initialize Firebase Auth
    auth = Firebase.auth
  3. আপনার কার্যকলাপ আরম্ভ করার সময়, ব্যবহারকারী বর্তমানে সাইন ইন আছে কিনা তা পরীক্ষা করে দেখুন।

    জাভা

    @Override
    public void onStart() {
        super.onStart();
        // Check if user is signed in (non-null) and update UI accordingly.
        FirebaseUser currentUser = mAuth.getCurrentUser();
        if(currentUser != null){
            reload();
        }
    }

    কোটলিন+কেটিএক্স

    public override fun onStart() {
        super.onStart()
        // Check if user is signed in (non-null) and update UI accordingly.
        val currentUser = auth.currentUser
        if(currentUser != null){
            reload();
        }
    }

নতুন ব্যবহারকারীদের সাইন আপ করুন

একটি নতুন তৈরি করুন createAccount পদ্ধতি যা একটি ইমেল ঠিকানা ও পাসওয়ার্ড লাগে, তাদের যাচাই করুন, এবং তারপর একটি নতুন ব্যবহারকারী তৈরি করে createUserWithEmailAndPassword পদ্ধতি।

জাভা

mAuth.createUserWithEmailAndPassword(email, password)
        .addOnCompleteListener(this, new OnCompleteListener<AuthResult>() {
            @Override
            public void onComplete(@NonNull Task<AuthResult> task) {
                if (task.isSuccessful()) {
                    // Sign in success, update UI with the signed-in user's information
                    Log.d(TAG, "createUserWithEmail:success");
                    FirebaseUser user = mAuth.getCurrentUser();
                    updateUI(user);
                } else {
                    // If sign in fails, display a message to the user.
                    Log.w(TAG, "createUserWithEmail:failure", task.getException());
                    Toast.makeText(EmailPasswordActivity.this, "Authentication failed.",
                            Toast.LENGTH_SHORT).show();
                    updateUI(null);
                }
            }
        });

কোটলিন+কেটিএক্স

auth.createUserWithEmailAndPassword(email, password)
        .addOnCompleteListener(this) { task ->
            if (task.isSuccessful) {
                // Sign in success, update UI with the signed-in user's information
                Log.d(TAG, "createUserWithEmail:success")
                val user = auth.currentUser
                updateUI(user)
            } else {
                // If sign in fails, display a message to the user.
                Log.w(TAG, "createUserWithEmail:failure", task.exception)
                Toast.makeText(baseContext, "Authentication failed.",
                        Toast.LENGTH_SHORT).show()
                updateUI(null)
            }
        }

নতুন ব্যবহারকারীদের তাদের ইমেইল এবং পাসওয়ার্ড দিয়ে নিবন্ধন করার জন্য একটি ফর্ম যোগ করুন এবং জমা দেওয়ার সময় এই নতুন পদ্ধতিতে কল করুন। আপনি যদি আমাদের মধ্যে একটি উদাহরণ দেখতে পারেন দ্রুতশুরু নমুনা

বিদ্যমান ব্যবহারকারীদের সাইন ইন করুন

একটি নতুন তৈরি করুন signIn পদ্ধতি যা একটি ইমেল ঠিকানা ও পাসওয়ার্ড লাগে, তাদের যাচাই করুন, এবং তারপর সাথে একজন ব্যবহারকারী স্বাক্ষর signInWithEmailAndPassword পদ্ধতি।

জাভা

mAuth.signInWithEmailAndPassword(email, password)
        .addOnCompleteListener(this, new OnCompleteListener<AuthResult>() {
            @Override
            public void onComplete(@NonNull Task<AuthResult> task) {
                if (task.isSuccessful()) {
                    // Sign in success, update UI with the signed-in user's information
                    Log.d(TAG, "signInWithEmail:success");
                    FirebaseUser user = mAuth.getCurrentUser();
                    updateUI(user);
                } else {
                    // If sign in fails, display a message to the user.
                    Log.w(TAG, "signInWithEmail:failure", task.getException());
                    Toast.makeText(EmailPasswordActivity.this, "Authentication failed.",
                            Toast.LENGTH_SHORT).show();
                    updateUI(null);
                }
            }
        });

কোটলিন+কেটিএক্স

auth.signInWithEmailAndPassword(email, password)
        .addOnCompleteListener(this) { task ->
            if (task.isSuccessful) {
                // Sign in success, update UI with the signed-in user's information
                Log.d(TAG, "signInWithEmail:success")
                val user = auth.currentUser
                updateUI(user)
            } else {
                // If sign in fails, display a message to the user.
                Log.w(TAG, "signInWithEmail:failure", task.exception)
                Toast.makeText(baseContext, "Authentication failed.",
                        Toast.LENGTH_SHORT).show()
                updateUI(null)
            }
        }

ব্যবহারকারীদের তাদের ইমেইল এবং পাসওয়ার্ড দিয়ে সাইন ইন করার জন্য একটি ফর্ম যোগ করুন এবং জমা দেওয়ার সময় এই নতুন পদ্ধতিতে কল করুন। আপনি যদি আমাদের মধ্যে একটি উদাহরণ দেখতে পারেন দ্রুতশুরু নমুনা

ব্যবহারকারীর তথ্য অ্যাক্সেস করুন

একটি ব্যবহারকারী সফলভাবে সাইন ইন করে থাকে তাহলে আপনার সাথে যেকোনো সময় তাদের অ্যাকাউন্ট ডেটা পেতে পারেন getCurrentUser পদ্ধতি।

জাভা

FirebaseUser user = FirebaseAuth.getInstance().getCurrentUser();
if (user != null) {
    // Name, email address, and profile photo Url
    String name = user.getDisplayName();
    String email = user.getEmail();
    Uri photoUrl = user.getPhotoUrl();

    // Check if user's email is verified
    boolean emailVerified = user.isEmailVerified();

    // The user's ID, unique to the Firebase project. Do NOT use this value to
    // authenticate with your backend server, if you have one. Use
    // FirebaseUser.getIdToken() instead.
    String uid = user.getUid();
}

কোটলিন+কেটিএক্স

val user = Firebase.auth.currentUser
user?.let {
    // Name, email address, and profile photo Url
    val name = user.displayName
    val email = user.email
    val photoUrl = user.photoUrl

    // Check if user's email is verified
    val emailVerified = user.isEmailVerified

    // The user's ID, unique to the Firebase project. Do NOT use this value to
    // authenticate with your backend server, if you have one. Use
    // FirebaseUser.getToken() instead.
    val uid = user.uid
}

পরবর্তী পদক্ষেপ

অন্যান্য পরিচয় এবং প্রমাণীকরণ পরিষেবা যোগ করার জন্য গাইডগুলি অন্বেষণ করুন: