Catch up on everthing we announced at this year's Firebase Summit. Learn more

Apple প্ল্যাটফর্মগুলিতে Firebase প্রমাণীকরণের সাথে শুরু করুন৷

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

আপনার অ্যাপটিকে Firebase-এ সংযুক্ত করুন

  1. Firebase SDK এর ইনস্টল করুন
  2. ইন Firebase কনসোল , আপনার Firebase প্রকল্পে আপনার অ্যাপ যোগ করুন।

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

ফায়ারবেস নির্ভরতা ইনস্টল এবং পরিচালনা করতে সুইফট প্যাকেজ ম্যানেজার ব্যবহার করুন।

  1. Xcode ক্ষেত্রে File খোলা আপনার অ্যাপ প্রকল্পের, নেভিগেট সঙ্গে> সুইফট প্যাকেজগুলি> প্যাকেজ নির্ভরতা যুক্ত করো।
  2. অনুরোধ করা হলে, Firebase Apple প্ল্যাটফর্ম SDK সংগ্রহস্থল যোগ করুন:
  3.   https://github.com/firebase/firebase-ios-sdk
      
  4. ফায়ারবেস প্রমাণীকরণ লাইব্রেরি বেছে নিন।
  5. শেষ হয়ে গেলে, Xcode স্বয়ংক্রিয়ভাবে পটভূমিতে আপনার নির্ভরতাগুলি সমাধান এবং ডাউনলোড করা শুরু করবে।

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

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

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

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

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

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

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

Firebase SDK আরম্ভ করুন

আপনার অ্যাপ প্রতিনিধিতে, প্রথমে Firebase SDK আমদানি করুন:

সুইফট

import Firebase

উদ্দেশ্য গ

@import Firebase;

তারপর, মধ্যে application:didFinishLaunchingWithOptions: পদ্ধতি, আরম্ভ FirebaseApp বস্তু:

সুইফট

// Use Firebase library to configure APIs
FirebaseApp.configure()

উদ্দেশ্য গ

// Use Firebase library to configure APIs
[FIRApp configure];

প্রমাণীকরণ অবস্থার জন্য শুনুন

আপনার অ্যাপ্লিকেশনের মতামত প্রত্যেকের জন্য যে বিষয়ে প্রয়োজন তথ্য সাইন ইন করা ব্যবহারকারীকে, এর একটি শ্রোতা সংযুক্ত FIRAuth অবজেক্ট। যখনই ব্যবহারকারীর সাইন-ইন অবস্থা পরিবর্তিত হয় তখন এই শ্রোতাকে কল করা হয়।

দৃশ্য নিয়ামক এর শ্রোতা সংযুক্ত করুন viewWillAppear পদ্ধতি:

সুইফট

handle = Auth.auth().addStateDidChangeListener { auth, user in
  // ...
}

উদ্দেশ্য গ

self.handle = [[FIRAuth auth]
    addAuthStateDidChangeListener:^(FIRAuth *_Nonnull auth, FIRUser *_Nullable user) {
      // ...
    }];

এবং দেখুন নিয়ামক এর শ্রোতা বিচ্ছিন্ন viewWillDisappear পদ্ধতি:

সুইফট

Auth.auth().removeStateDidChangeListener(handle!)

উদ্দেশ্য গ

[[FIRAuth auth] removeAuthStateDidChangeListener:_handle];

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

একটি ফর্ম তৈরি করুন যা নতুন ব্যবহারকারীদের তাদের ইমেল ঠিকানা এবং একটি পাসওয়ার্ড ব্যবহার করে আপনার অ্যাপে নিবন্ধন করতে দেয়৷ একটি ব্যবহারকারী ফর্ম সমাপ্ত হলে, ইমেইল ঠিকানা এবং পাসওয়ার্ড ব্যবহারকারী দ্বারা উপলব্ধ যাচাই, তারপর তাদের পাস createUser পদ্ধতি:

সুইফট

Auth.auth().createUser(withEmail: email, password: password) { authResult, error in
  // ...
}

উদ্দেশ্য গ

[[FIRAuth auth] createUserWithEmail:email
                           password:password
                         completion:^(FIRAuthDataResult * _Nullable authResult,
                                      NSError * _Nullable error) {
  // ...
}];

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

একটি ফর্ম তৈরি করুন যা বিদ্যমান ব্যবহারকারীদের তাদের ইমেল ঠিকানা এবং পাসওয়ার্ড ব্যবহার করে সাইন ইন করতে দেয়৷ একটি ব্যবহারকারী ফর্ম সমাপ্ত হলে, কল signIn পদ্ধতি:

সুইফট

Auth.auth().signIn(withEmail: email, password: password) { [weak self] authResult, error in
  guard let strongSelf = self else { return }
  // ...
}

উদ্দেশ্য গ

[[FIRAuth auth] signInWithEmail:self->_emailField.text
                       password:self->_passwordField.text
                     completion:^(FIRAuthDataResult * _Nullable authResult,
                                  NSError * _Nullable error) {
  // ...
}];

ব্যবহারকারীর তথ্য পান

একজন ব্যবহারকারী সফলভাবে সাইন ইন করার পরে, আপনি ব্যবহারকারী সম্পর্কে তথ্য পেতে পারেন। উদাহরণস্বরূপ, আপনার মধ্যে প্রমাণীকরণ রাষ্ট্র শ্রোতা :

সুইফট

if let user = user {
  // 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 getTokenWithCompletion:completion: instead.
  let uid = user.uid
  let email = user.email
  let photoURL = user.photoURL
  var multiFactorString = "MultiFactor: "
  for info in user.multiFactor.enrolledFactors {
    multiFactorString += info.displayName ?? "[DispayName]"
    multiFactorString += " "
  }
  // ...
}

উদ্দেশ্য গ

if (user) {
  // 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 getTokenWithCompletion:completion: instead.
  NSString *email = user.email;
  NSString *uid = user.uid;
  NSMutableString *multiFactorString = [NSMutableString stringWithFormat:@"MultiFactor: "];
  for (FIRMultiFactorInfo *info in user.multiFactor.enrolledFactors) {
    [multiFactorString appendString:info.displayName];
    [multiFactorString appendString:@" "];
  }
  NSURL *photoURL = user.photoURL;
  // ...
}

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

অন্যান্য পরিচয় প্রদানকারী এবং বেনামী অতিথি অ্যাকাউন্টগুলির জন্য কীভাবে সমর্থন যোগ করবেন তা জানুন: