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

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

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

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 project फ़ाइल से अलग है. इसे खोलने पर, बिल्ड में गड़बड़ियां आ सकती हैं.)

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

Swift Package Manager

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

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

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

    पैकेज प्रॉडक्ट GoogleSignInSwift

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

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

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

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

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

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

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

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

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

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

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

  2. वेब ऐप्लिकेशन टाइप का नया OAuth क्लाइंट आईडी बनाएं. क्लाइंट आईडी स्ट्रिंग को नोट करें. इसकी मदद से, आपको अपने ऐप्लिकेशन में Google Sign-In को कॉन्फ़िगर करना होगा.

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

Google Sign-In के लिए, आपके प्रोजेक्ट को 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>

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

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

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

अगले चरण

अब आपने प्रोजेक्ट की डिपेंडेंसी डाउनलोड कर ली हैं और अपने Xcode प्रोजेक्ट को कॉन्फ़िगर कर लिया है. अब अपने iOS ऐप्लिकेशन में Google Sign-In जोड़ा जा सकता है.