iOS और macOS के लिए, 'Google साइन इन' का इस्तेमाल शुरू करना

अपने iOS या macOS ऐप्लिकेशन को Google Sign-In कॉम्पोनेंट के साथ इंटिग्रेट करने से पहले, आपको डिपेंडेंसी डाउनलोड करनी होंगी और अपने Xcode प्रोजेक्ट को कॉन्फ़िगर करना होगा. इस पेज पर दिए गए तरीके से, ऐसा ही किया जा सकता है. इसके बाद, अगले चरणों में बताया गया है कि Google साइन इन की सुविधाओं को अपने ऐप्लिकेशन में कैसे इंटिग्रेट करें.

शुरू करने से पहले

Xcode का मौजूदा वर्शन इंस्टॉल करें.

अपने प्रोजेक्ट में, Google Sign-In की डिपेंडेंसी इंस्टॉल करना

CocoaPods

  1. अगर आपने पहले से ही CocoaPods इंस्टॉल नहीं किया है, तो CocoaPods की शुरुआत करना गाइड में दिया गया तरीका अपनाएं.

  2. कोई टर्मिनल विंडो खोलें और अपने ऐप्लिकेशन के Xcode प्रोजेक्ट की जगह पर नेविगेट करें.

  3. अगर आपने अपने ऐप्लिकेशन के लिए पहले से कोई Podfile नहीं बनाई है, तो अभी बनाएं:

    pod init

  4. अपने ऐप्लिकेशन के लिए बनाया गया Podfile खोलें और यह कोड जोड़ें:

    pod 'GoogleSignIn'

  5. अगर SwiftUI का इस्तेमाल किया जा रहा है, तो "Google से साइन इन करें" बटन के लिए पॉड एक्सटेंशन भी जोड़ें:

    pod 'GoogleSignInSwiftSupport'

  6. फ़ाइल सेव करें और चलाएं:

    pod install

  7. Xcode में, अपने ऐप्लिकेशन के लिए जनरेट की गई .xcworkspace workspace फ़ाइल खोलें. अपने ऐप्लिकेशन में भविष्य के विकास के लिए इस फ़ाइल का इस्तेमाल करें. (ध्यान दें कि यह शामिल की गई .xcodeproj प्रोजेक्ट फ़ाइल से अलग है. इसे खोलने पर, बिल्ड से जुड़ी गड़बड़ियां दिखेंगी.)

    उदाहरण के लिए, Objective-C के सैंपल ऐप्लिकेशन का Podfile देखें.

Swift Package Manager

  1. Xcode में अपना प्रोजेक्ट खोलें.

  2. अपने ऐप्लिकेशन में, Google Sign-In की डिपेंडेंसी जोड़ें (Xcode का दस्तावेज़):

    डेटा स्टोर करने की जगह https://github.com/google/GoogleSignIn-iOS
    वर्शन 7.0.0
    पैकेज किया गया प्रॉडक्ट GoogleSignIn
  3. अगर SwiftUI का इस्तेमाल किया जा रहा है, तो "Google से साइन इन करें" बटन के लिए, यह एक्सटेंशन पैकेज प्रॉडक्ट भी जोड़ें:

    पैकेज किया गया प्रॉडक्ट GoogleSignInSwift

OAuth क्लाइंट आईडी पाना

आपके ऐप्लिकेशन को OAuth क्लाइंट आईडी की ज़रूरत होती है, ताकि वह Google के पुष्टि करने वाले बैकएंड पर अपनी पहचान कर सके. iOS और macOS ऐप्लिकेशन के लिए, OAuth क्लाइंट आईडी ऐप्लिकेशन टाइप को iOS के तौर पर कॉन्फ़िगर किया जाना चाहिए.

अगर आपने पहले से OAuth क्लाइंट आईडी नहीं बनाया है, तो इसे बनाने के लिए यहां दिए गए बटन पर क्लिक करें.

OAuth क्लाइंट आईडी बनाना

OAuth क्लाइंट आईडी बनाने के बाद, क्लाइंट आईडी स्ट्रिंग को नोट कर लें. आपको अपने ऐप्लिकेशन में 'Google से साइन इन करें' सुविधा को कॉन्फ़िगर करने के लिए इसकी ज़रूरत होगी. आपके पास कॉन्फ़िगरेशन फ़ाइल डाउनलोड करने का विकल्प भी होता है. इसमें आपका क्लाइंट आईडी और अन्य कॉन्फ़िगरेशन डेटा होता है, ताकि आने वाले समय में इसका इस्तेमाल किया जा सके.

अगर आपने पहले ही OAuth क्लाइंट आईडी बना लिया है, तो नीचे दिए गए बटन पर क्लिक करके, OAuth से जुड़ी अपनी मौजूदा जानकारी देखी जा सकती है.

मौजूदा OAuth क्लाइंट आईडी पाना

OAuth सर्वर क्लाइंट आईडी पाना

ज़्यादातर ऐप्लिकेशन को, साइन इन किए गए उपयोगकर्ताओं की पहचान को किसी तरह की बैकएंड सेवा में पास करना होगा. Google से साइन इन करने वाले उपयोगकर्ताओं की पहचान को सुरक्षित तरीके से अपने बैकएंड पर भेजने के लिए, आईडी टोकन का इस्तेमाल किया जाता है. इसके बारे में बैकएंड सर्वर से पुष्टि करना लेख में बताया गया है. किसी उपयोगकर्ता का आईडी टोकन पाने के लिए, दूसरे क्लाइंट आईडी की ज़रूरत होती है. यह आपका सर्वर क्लाइंट आईडी होता है, जो आपके बैकएंड को दिखाता है.

सर्वर क्लाइंट आईडी बनाने के लिए:

  1. अपने प्रोजेक्ट को Cloud Console में खोलें.

  2. वेब ऐप्लिकेशन टाइप का नया OAuth क्लाइंट आईडी बनाएं. क्लाइंट आईडी स्ट्रिंग को नोट कर लें. आपको अपने ऐप्लिकेशन में Google से साइन इन करने की सुविधा कॉन्फ़िगर करने के लिए इसकी ज़रूरत होगी.

अपने ऐप्लिकेशन प्रोजेक्ट को कॉन्फ़िगर करना

'Google से साइन इन करें' सुविधा के लिए, आपके प्रोजेक्ट को OAuth क्लाइंट आईडी और कस्टम यूआरएल स्कीम के साथ कॉन्फ़िगर किया जाना चाहिए. इसके अलावा, बैकएंड पुष्टि के लिए, अपने सर्वर क्लाइंट आईडी को भी जोड़ा जा सकता है. इसके अलावा, अपने ऐप्लिकेशन को Google Workspace डोमेन के लिए ऑप्टिमाइज़ किया जा सकता है.

अपना OAuth क्लाइंट आईडी और कस्टम यूआरएल स्कीम जोड़ना

अपने ऐप्लिकेशन की Info.plist फ़ाइल अपडेट करें, ताकि उसमें OAuth क्लाइंट आईडी और उल्टे क्रम में लिखे गए क्लाइंट आईडी के आधार पर कस्टम यूआरएल स्कीम जोड़ी जा सके.

रिवर्स किया गया क्लाइंट आईडी, आपका क्लाइंट आईडी होता है. इसमें डॉट से अलग किए गए फ़ील्ड का क्रम उलट दिया जाता है. Cloud Console में मौजूद iOS OAuth क्लाइंट को चुनते समय, यह "iOS यूआरएल स्कीम" में भी दिखता है. उदाहरण के लिए: 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>

ज़रूरी नहीं: Google Workspace डोमेन या OpenID Realm के लिए ऑप्टिमाइज़ करें

अगर आपको किसी Google Workspace डोमेन के लिए साइन-इन फ़्लो को ऑप्टिमाइज़ करना है, तो GIDHostedDomain पैरामीटर का इस्तेमाल करें.

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

अगर आपको OpenID realm की जानकारी देनी है, तो GIDOpenIDRealm पैरामीटर का इस्तेमाल करें.

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

अपने ऐप्लिकेशन पर हस्ताक्षर करना

आपके ऐप्लिकेशन पर Apple से जारी किए गए सर्टिफ़िकेट से हस्ताक्षर किया जाना चाहिए, ताकि यह macOS और iOS डिवाइसों पर नेटिव तौर पर चल सके. ऐसा इसलिए ज़रूरी है, ताकि Keychain का इस्तेमाल करके क्रेडेंशियल सेव किए जा सकें.

macOS ऐप्लिकेशन को Keychain का इस्तेमाल करके क्रेडेंशियल सेव करने की अनुमति देने के लिए, आपको $(AppIdentifierPrefix)$(CFBundleIdentifier) को इसके Keychain ऐक्सेस ग्रुप में जोड़ना होगा.

अगले चरण

प्रोजेक्ट की डिपेंडेंसी डाउनलोड करने और Xcode प्रोजेक्ट को कॉन्फ़िगर करने के बाद, अपने iOS ऐप्लिकेशन में Google साइन इन की सुविधा जोड़ी जा सकती है.