Web Development Email/Password Authentication সেটআপ করা গাইড ও নোট

279

ফায়ারবেস (Firebase) Email/Password Authentication সেটআপ করা আপনার অ্যাপ্লিকেশনে ব্যবহারকারীদের সাইন-আপ এবং লগইন করার একটি সহজ এবং নিরাপদ পদ্ধতি। এই প্রক্রিয়া ব্যবহারকারীদের তাদের ইমেইল এবং পাসওয়ার্ড দিয়ে অ্যাকাউন্ট তৈরি এবং লগইন করতে সহায়তা করে। নিচে বিস্তারিতভাবে ফায়ারবেস Email/Password Authentication সেটআপ করার প্রক্রিয়া দেওয়া হলো।


ফায়ারবেস Email/Password Authentication সেটআপ করার ধাপসমূহ

১. ফায়ারবেস কনসোলে প্রজেক্ট তৈরি করা

ফায়ারবেস কনসোলে একটি নতুন প্রজেক্ট তৈরি করুন যদি ইতিমধ্যে একটি প্রজেক্ট তৈরি না করে থাকেন। এরপর, আপনার প্রজেক্টে Firebase Authentication সেবা যুক্ত করুন।

২. Firebase Authentication সক্রিয় করা

  1. ফায়ারবেস কনসোলে লগইন করুন এবং আপনার প্রজেক্ট খুলুন।
  2. Authentication সেকশনে যান, তারপর Sign-in method ট্যাবটি সিলেক্ট করুন।
  3. Email/Password অপশনটি খুঁজে পেয়ে সেটিকে Enabled করে দিন।
  4. Save বাটনটি ক্লিক করুন।

৩. অ্যান্ড্রয়েড অ্যাপে Firebase Authentication SDK ইনস্টল করা

আপনার build.gradle (Project-level) ফাইলে Firebase Authentication এর জন্য প্রয়োজনীয় লাইব্রেরি যোগ করুন:

dependencies {
    implementation 'com.google.firebase:firebase-auth:21.0.0' // Firebase Authentication
}

এছাড়া build.gradle (App-level) ফাইলে google-services প্লাগইন ইনস্টল করা থাকতে হবে:

apply plugin: 'com.google.gms.google-services'

এরপর Sync Now বাটন ক্লিক করে গ্র্যাডেল সিঙ্ক করুন।

৪. Firebase Authentication ইনিশিয়ালাইজ করা

আপনার MainActivity.java বা MainActivity.kt ফাইলে Firebase Authentication সেটআপ করুন:

import com.google.firebase.auth.FirebaseAuth;

public class MainActivity extends AppCompatActivity {

    private FirebaseAuth mAuth;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        // Firebase Authentication ইনিশিয়ালাইজ করা
        mAuth = FirebaseAuth.getInstance();
    }
}

৫. সাইন-আপ ফিচার তৈরি করা

এখন আমরা ইমেইল/পাসওয়ার্ড দিয়ে ব্যবহারকারী সাইন-আপ করার ফিচার তৈরি করব। নিচের কোডটি ব্যবহার করে সাইন-আপ ফিচার তৈরি করুন:

EditText emailEditText = findViewById(R.id.email);
EditText passwordEditText = findViewById(R.id.password);
Button signUpButton = findViewById(R.id.signUpButton);

signUpButton.setOnClickListener(new View.OnClickListener() {
    @Override
    public void onClick(View v) {
        String email = emailEditText.getText().toString();
        String password = passwordEditText.getText().toString();

        // Firebase Authentication সাইন-আপ করা
        mAuth.createUserWithEmailAndPassword(email, password)
            .addOnCompleteListener(MainActivity.this, new OnCompleteListener<AuthResult>() {
                @Override
                public void onComplete(@NonNull Task<AuthResult> task) {
                    if (task.isSuccessful()) {
                        // সাইন-আপ সফল
                        FirebaseUser user = mAuth.getCurrentUser();
                        Toast.makeText(MainActivity.this, "সাইন-আপ সফল!", Toast.LENGTH_SHORT).show();
                    } else {
                        // সাইন-আপ ব্যর্থ
                        Toast.makeText(MainActivity.this, "সাইন-আপ ব্যর্থ: " + task.getException().getMessage(), Toast.LENGTH_SHORT).show();
                    }
                }
            });
    }
});

৬. লগইন ফিচার তৈরি করা

এখন, আমরা ইমেইল/পাসওয়ার্ড দিয়ে লগইন করার ফিচার তৈরি করব। নিচের কোডটি ব্যবহার করে লগইন ফিচার তৈরি করুন:

EditText emailEditText = findViewById(R.id.email);
EditText passwordEditText = findViewById(R.id.password);
Button loginButton = findViewById(R.id.loginButton);

loginButton.setOnClickListener(new View.OnClickListener() {
    @Override
    public void onClick(View v) {
        String email = emailEditText.getText().toString();
        String password = passwordEditText.getText().toString();

        // Firebase Authentication লগইন করা
        mAuth.signInWithEmailAndPassword(email, password)
            .addOnCompleteListener(MainActivity.this, new OnCompleteListener<AuthResult>() {
                @Override
                public void onComplete(@NonNull Task<AuthResult> task) {
                    if (task.isSuccessful()) {
                        // লগইন সফল
                        FirebaseUser user = mAuth.getCurrentUser();
                        Toast.makeText(MainActivity.this, "লগইন সফল!", Toast.LENGTH_SHORT).show();
                    } else {
                        // লগইন ব্যর্থ
                        Toast.makeText(MainActivity.this, "লগইন ব্যর্থ: " + task.getException().getMessage(), Toast.LENGTH_SHORT).show();
                    }
                }
            });
    }
});

৭. লগআউট ফিচার তৈরি করা

ব্যবহারকারী যখন অ্যাপ্লিকেশন থেকে লগআউট করতে চান, তখন আপনি নিম্নলিখিত কোড ব্যবহার করে লগআউট ফিচার তৈরি করতে পারেন:

Button logoutButton = findViewById(R.id.logoutButton);

logoutButton.setOnClickListener(new View.OnClickListener() {
    @Override
    public void onClick(View v) {
        // Firebase Authentication লগআউট করা
        mAuth.signOut();
        Toast.makeText(MainActivity.this, "লগআউট সফল!", Toast.LENGTH_SHORT).show();
    }
});

আইওএস অ্যাপে Email/Password Authentication সেটআপ করা

১. Firebase Authentication SDK ইনস্টল করা

আপনার Podfile ফাইলে Firebase Authentication এর জন্য পড যোগ করুন:

pod 'Firebase/Auth'

তারপর, CocoaPods ব্যবহার করে পডগুলি ইনস্টল করুন:

pod install

২. Firebase Authentication ইনিশিয়ালাইজ করা

AppDelegate.swift ফাইলে Firebase ইনিশিয়ালাইজ করুন:

import Firebase

@main
class AppDelegate: UIResponder, UIApplicationDelegate {

    func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool {
        FirebaseApp.configure()
        return true
    }
}

৩. সাইন-আপ ফিচার তৈরি করা

সাইন-আপের জন্য নিচের কোডটি ব্যবহার করুন:

import FirebaseAuth

@IBAction func signUpButtonTapped(_ sender: UIButton) {
    guard let email = emailTextField.text, let password = passwordTextField.text else { return }

    Auth.auth().createUser(withEmail: email, password: password) { (result, error) in
        if let error = error {
            print("Error creating user: \(error.localizedDescription)")
        } else {
            print("User created successfully")
        }
    }
}

৪. লগইন ফিচার তৈরি করা

লগইন ফিচারটি তৈরি করার জন্য:

@IBAction func loginButtonTapped(_ sender: UIButton) {
    guard let email = emailTextField.text, let password = passwordTextField.text else { return }

    Auth.auth().signIn(withEmail: email, password: password) { (result, error) in
        if let error = error {
            print("Error signing in: \(error.localizedDescription)")
        } else {
            print("User logged in successfully")
        }
    }
}

৫. লগআউট ফিচার তৈরি করা

লগআউটের জন্য নিচের কোডটি ব্যবহার করুন:

@IBAction func logoutButtonTapped(_ sender: UIButton) {
    do {
        try Auth.auth().signOut()
        print("User logged out successfully")
    } catch let signOutError as NSError {
        print("Error signing out: \(signOutError.localizedDescription)")
    }
}

সারাংশ

ফায়ারবেস Email/Password Authentication ব্যবহারকারীদের নিরাপদভাবে সাইন-আপ এবং লগইন করার জন্য একটি শক্তিশালী পদ্ধতি প্রদান করে। আপনি ফায়ারবেস কনসোল থেকে Email/Password সাইন-ইন মেথডটি সক্রিয় করার পর, আপনাকে আপনার অ্যাপে Firebase Authentication SDK ইনস্টল ও কনফিগার করতে হবে। এরপর, সাইন-আপ, লগইন এবং লগআউট ফিচারগুলি প্রোগ্রামmatically তৈরি করতে হবে। এটি আপনার অ্যাপে ব্যবহারকারীদের জন্য একটি সিকিউর এবং ব্যবহার-বান্ধব প্রক্রিয়া তৈরি করবে।

Content added By
Promotion

Are you sure to start over?

Loading...