iOS এবং macOS-এর জন্য Google সাইন-ইন দিয়ে শুরু করুন

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

শুরু করার আগে

Xcode- এর সাম্প্রতিক সংস্করণটি ইনস্টল করুন।

আপনার প্রোজেক্টে গুগল সাইন-ইন নির্ভরতাগুলো ইনস্টল করুন।

কোকোপড

  1. আপনার যদি আগে থেকে CocoaPods ইনস্টল করা না থাকে, তাহলে CocoaPods Getting Started গাইডের ধাপগুলো অনুসরণ করুন।

  2. একটি টার্মিনাল উইন্ডো খুলুন এবং আপনার অ্যাপের Xcode প্রজেক্টের অবস্থানে যান।

  3. আপনি যদি আপনার অ্যাপ্লিকেশনের জন্য আগে থেকে কোনো Podfile তৈরি না করে থাকেন, তাহলে এখনই একটি তৈরি করুন:

    pod init

  4. আপনার অ্যাপ্লিকেশনের জন্য তৈরি করা Podfile-টি খুলুন এবং নিম্নলিখিত বিষয়গুলো যোগ করুন:

    pod 'GoogleSignIn'

  5. আপনি যদি SwiftUI ব্যবহার করেন, তাহলে "Sign in with Google" বাটনটির জন্যও পড এক্সটেনশনটি যোগ করুন:

    pod 'GoogleSignInSwiftSupport'

  6. ফাইলটি সংরক্ষণ করুন এবং চালান:

    pod install

  7. আপনার অ্যাপ্লিকেশনের জন্য তৈরি হওয়া .xcworkspace ওয়ার্কস্পেস ফাইলটি Xcode-এ খুলুন। আপনার অ্যাপ্লিকেশনের ভবিষ্যৎ সকল উন্নয়নের জন্য এই ফাইলটি ব্যবহার করুন। (উল্লেখ্য যে, এটি অন্তর্ভুক্ত .xcodeproj প্রোজেক্ট ফাইল থেকে ভিন্ন, যা খুললে বিল্ড এরর দেখা দেবে।)

    উদাহরণের জন্য আপনি অবজেক্টিভ-সি স্যাম্পল অ্যাপটির পডফাইলটি দেখতে পারেন।

সুইফট প্যাকেজ ম্যানেজার

  1. আপনার প্রজেক্টটি Xcode-এ খুলুন।

  2. আপনার অ্যাপে গুগল সাইন-ইন নির্ভরতাগুলো যোগ করুন ( এক্সকোড ডকুমেন্টেশন অনুযায়ী ):

    সংগ্রহস্থল https://github.com/google/GoogleSignIn-iOS
    সংস্করণ ৯.০.০
    প্যাকেজ পণ্য গুগল সাইন ইন
  3. আপনি যদি SwiftUI ব্যবহার করেন, তাহলে 'Sign in with Google' বাটনটির জন্য নিম্নলিখিত এক্সটেনশন প্যাকেজ প্রোডাক্টটিও যোগ করুন:

    প্যাকেজ পণ্য গুগল সাইন ইন সুইফট

একটি OAuth ক্লায়েন্ট আইডি পান

গুগলের অথেনটিকেশন ব্যাকএন্ডের কাছে নিজেকে শনাক্ত করার জন্য আপনার অ্যাপের একটি OAuth ক্লায়েন্ট আইডি প্রয়োজন। iOS এবং macOS অ্যাপের ক্ষেত্রে OAuth ক্লায়েন্ট আইডি অ্যাপ্লিকেশন টাইপটি অবশ্যই iOS হিসেবে কনফিগার করতে হবে।

আপনি যদি এখনও একটি OAuth ক্লায়েন্ট আইডি তৈরি না করে থাকেন, তবে তা করার জন্য নিচের বোতামটিতে ক্লিক করুন।

একটি OAuth ক্লায়েন্ট আইডি তৈরি করুন

OAuth ক্লায়েন্ট আইডি তৈরি করার পরে, ক্লায়েন্ট আইডি স্ট্রিংটি লিখে রাখুন, যা আপনার অ্যাপে গুগল সাইন-ইন কনফিগার করার জন্য প্রয়োজন হবে। ভবিষ্যতের জন্য আপনি চাইলে কনফিগারেশন ফাইলটি ডাউনলোড করতে পারেন, যেটিতে আপনার ক্লায়েন্ট আইডি এবং অন্যান্য কনফিগারেশন ডেটা রয়েছে।

আপনি যদি আগে থেকেই একটি OAuth ক্লায়েন্ট আইডি তৈরি করে থাকেন, তাহলে নিচের বোতামটিতে ক্লিক করে আপনার বিদ্যমান OAuth তথ্য খুঁজে নিতে পারেন।

একটি বিদ্যমান OAuth ক্লায়েন্ট আইডি পান

একটি OAuth সার্ভার ক্লায়েন্ট আইডি পান

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

সার্ভার ক্লায়েন্ট আইডি তৈরি করতে:

  1. ক্লাউড কনসোলে আপনার প্রজেক্টটি খুলুন।

  2. একটি নতুন ওয়েব অ্যাপ্লিকেশন টাইপের OAuth ক্লায়েন্ট আইডি তৈরি করুন। ক্লায়েন্ট আইডি স্ট্রিংটি নোট করে রাখুন, যা আপনার অ্যাপে গুগল সাইন-ইন কনফিগার করার জন্য প্রয়োজন হবে।

আপনার অ্যাপ্লিকেশন প্রজেক্ট কনফিগার করুন

Google Sign-In requires your project to be configured with your OAuth client ID and a custom URL scheme. Optionally, you can also add your server client ID for backend authentication or optimize your app for your Google Workspace domain.

আপনার OAuth ক্লায়েন্ট আইডি এবং কাস্টম ইউআরএল স্কিম যোগ করুন

আপনার অ্যাপের Info.plist ফাইলটি আপডেট করে আপনার OAuth ক্লায়েন্ট আইডি এবং রিভার্সড ক্লায়েন্ট আইডির উপর ভিত্তি করে একটি কাস্টম ইউআরএল স্কিমা যোগ করুন।

বিপরীত ক্লায়েন্ট আইডি হলো আপনার ক্লায়েন্ট আইডি, যার ডট-ডিলিমিটেড ফিল্ডগুলোর ক্রম উল্টে দেওয়া হয়েছে। ক্লাউড কনসোলে একটি বিদ্যমান iOS OAuth ক্লায়েন্ট নির্বাচন করার সময় এটি " iOS URL scheme "-এর অধীনেও দেখানো হয়। উদাহরণস্বরূপ: com.googleusercontent.apps.1234567890-abcdefg

<key>GIDClientID</key>
<string>YOUR_IOS_CLIENT_ID</string>
<key>CFBundleURLTypes</key>
<array>
  <dict>
    <key>CFBundleURLSchemes</key>
    <array>
      <string>YOUR_DOT_REVERSED_IOS_CLIENT_ID</string>
    </array>
  </dict>
</array>

ঐচ্ছিক: ব্যাকএন্ড প্রমাণীকরণ কনফিগার করুন

ব্যাকএন্ড অথেনটিকেশনের জন্য যদি ব্যবহারকারীদের আইডি টোকেন পাওয়ার প্রয়োজন হয়, তাহলে আপনার অ্যাপের Info.plist ফাইলে GIDServerClientID কী-টিও সেট করুন।

<key>GIDServerClientID</key>
<string>YOUR_SERVER_CLIENT_ID</string>

ঐচ্ছিক: গুগল ওয়ার্কস্পেস ডোমেইন বা ওপেনআইডি রিয়েলমের জন্য অপ্টিমাইজ করুন।

আপনি যদি কোনো গুগল ওয়ার্কস্পেস ডোমেনের জন্য সাইন-ইন প্রক্রিয়াটি অপ্টিমাইজ করতে চান, তাহলে GIDHostedDomain প্যারামিটারটি ব্যবহার করুন।

<key>GIDHostedDomain</key>
<string>YOUR_HOSTED_DOMAIN</string>

আপনি যদি একটি OpenID রিয়েলম নির্দিষ্ট করতে চান, তাহলে GIDOpenIDRealm প্যারামিটারটি ব্যবহার করুন।

<key>GIDOpenIDRealm</key>
<string>YOUR_OPENID_REALM</string>

আপনার আবেদনপত্রে স্বাক্ষর করা

Keychain ব্যবহার করে ক্রেডেনশিয়াল সংরক্ষণ করার জন্য, আপনার অ্যাপ্লিকেশনটিকে macOS এবং iOS ডিভাইসে নেটিভভাবে চলার জন্য Apple কর্তৃক ইস্যু করা একটি সার্টিফিকেট দিয়ে স্বাক্ষরিত হতে হবে।

আপনার macOS অ্যাপে Keychain ব্যবহার করে সফলভাবে ক্রেডেনশিয়াল সংরক্ষণ করার জন্য, আপনাকে এর Keychain অ্যাক্সেস গ্রুপে $(AppIdentifierPrefix)$(CFBundleIdentifier) ​​যোগ করতে হবে।

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

এখন যেহেতু আপনি প্রোজেক্টের ডিপেন্ডেন্সিগুলো ডাউনলোড করে আপনার এক্সকোড প্রোজেক্ট কনফিগার করেছেন, আপনি আপনার আইওএস অ্যাপে গুগল সাইন-ইন যোগ করতে পারেন।