আইওএসে ফায়ারবেস প্রমাণীকরণ দিয়ে শুরু করুন

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

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

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

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

  1. Firebase প্রমাণীকরণের জন্য নির্ভরতা আপনার প্রকল্পের যোগ করুন Podfile :

    pod 'Firebase/Auth'
    
  2. চালান pod install এবং তৈরি খুলতে .xcworkspace ফাইল।

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

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

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

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

  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;
  // ...
}

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

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