เริ่มต้นใช้งาน Google Sign-In สำหรับ iOS และ macOS

ก่อนที่จะเริ่มผสานรวมแอป iOS หรือ macOS กับคอมโพเนนต์ Google Sign-In คุณต้องดาวน์โหลดทรัพยากร Dependency และกำหนดค่าโปรเจ็กต์ Xcode ก่อน ขั้นตอนในหน้านี้ จะช่วยคุณได้ ขั้นตอนถัดไปคือวิธีผสานรวม ฟีเจอร์ Google Sign-In ในแอปของคุณ

ก่อนเริ่มต้น

ติดตั้ง Xcode เวอร์ชันปัจจุบัน

ติดตั้งทรัพยากร Dependency ของ 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. เปิดไฟล์ .xcworkspace workspace ที่สร้างขึ้นสำหรับแอปพลิเคชันของคุณใน Xcode ใช้ไฟล์นี้สำหรับการพัฒนาแอปพลิเคชันในอนาคตทั้งหมด (โปรดทราบว่าไฟล์นี้ต่างจากไฟล์โปรเจ็กต์ .xcodeproj ที่รวมอยู่ ซึ่งจะส่งผลให้เกิดข้อผิดพลาดการสร้างเมื่อเปิดขึ้น)

    คุณอาจดูตัวอย่างจาก Podfile ของแอป Objective-C ตัวอย่าง

ผู้จัดการแพ็กเกจของ Swift

  1. เปิดโปรเจ็กต์ใน Xcode

  2. เพิ่มทรัพยากร Dependency ของ 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 Sign-In ในแอป คุณจะเลือกดาวน์โหลดไฟล์การกำหนดค่าซึ่งมีรหัสไคลเอ็นต์และข้อมูลการกำหนดค่าอื่นๆ เพื่อใช้อ้างอิงในอนาคตได้ (ไม่บังคับ)

หากสร้างรหัสไคลเอ็นต์ OAuth ไว้แล้ว คุณจะค้นหาข้อมูล OAuth ที่มีอยู่ได้โดยคลิกปุ่มด้านล่าง

รับรหัสไคลเอ็นต์ OAuth ที่มีอยู่

รับรหัสไคลเอ็นต์ของเซิร์ฟเวอร์ OAuth

แอปส่วนใหญ่จะต้องส่งข้อมูลประจำตัวของผู้ใช้ที่ลงชื่อเข้าใช้ไปยังบริการแบ็กเอนด์บางประเภท ในการส่งข้อมูลประจำตัวของผู้ใช้ที่ลงชื่อเข้าใช้ด้วย Google ไปยังแบ็กเอนด์อย่างปลอดภัย ให้ใช้โทเค็นรหัสตามที่อธิบายไว้ในตรวจสอบสิทธิ์กับเซิร์ฟเวอร์แบ็กเอนด์ การเรียกโทเค็นรหัสผู้ใช้จะต้องมีรหัสไคลเอ็นต์ที่ 2 ซึ่งก็คือรหัสไคลเอ็นต์ของเซิร์ฟเวอร์ ซึ่งแสดงถึงแบ็กเอนด์ของคุณ

วิธีสร้างรหัสไคลเอ็นต์ของเซิร์ฟเวอร์

  1. เปิดโปรเจ็กต์ใน Cloud Console

  2. สร้างรหัสไคลเอ็นต์ OAuth ประเภทเว็บแอปพลิเคชันใหม่ จดบันทึกสตริงรหัสไคลเอ็นต์ ซึ่งคุณจะต้องกำหนดค่า Google Sign-In ในแอป

กำหนดค่าโปรเจ็กต์แอปพลิเคชันของคุณ

Google Sign-In กำหนดให้คุณต้องกำหนดค่าโปรเจ็กต์ด้วยรหัสไคลเอ็นต์ OAuth และชุดรูปแบบ URL ที่กำหนดเอง นอกจากนี้ คุณยังเพิ่มรหัสไคลเอ็นต์ของเซิร์ฟเวอร์สำหรับการตรวจสอบสิทธิ์แบ็กเอนด์หรือเพิ่มประสิทธิภาพแอปสำหรับโดเมน Google Workspace ได้อีกด้วย

เพิ่มรหัสไคลเอ็นต์ OAuth และชุดรูปแบบ URL ที่กำหนดเอง

อัปเดตไฟล์ Info.plist ของแอปเพื่อเพิ่มรหัสไคลเอ็นต์ OAuth และรูปแบบ URL ที่กำหนดเองตามรหัสไคลเอ็นต์ที่ย้อนกลับ

รหัสไคลเอ็นต์ที่ย้อนกลับคือรหัสไคลเอ็นต์ที่มีลำดับของช่องที่คั่นด้วยจุดกลับด้าน ซึ่งจะแสดงอยู่ในส่วน "รูปแบบ URL ของ iOS" ด้วยเมื่อเลือกไคลเอ็นต์ OAuth ของ iOS ที่มีอยู่ใน Cloud Console ตัวอย่างเช่น 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>

ไม่บังคับ: กำหนดค่าการตรวจสอบสิทธิ์แบ็กเอนด์

หากคุณต้องการรับโทเค็น ID ของผู้ใช้เพื่อการตรวจสอบสิทธิ์แบ็กเอนด์ ให้ตั้งค่าคีย์ GIDServerClientID ในไฟล์ Info.plist ของแอปด้วย

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

ไม่บังคับ: เพิ่มประสิทธิภาพสำหรับโดเมน Google Workspace หรือขอบเขต OpenID

ใช้พารามิเตอร์ GIDHostedDomain หากต้องการเพิ่มประสิทธิภาพขั้นตอนการลงชื่อเข้าใช้สำหรับโดเมน Google Workspace

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

ใช้พารามิเตอร์ GIDOpenIDRealm หากต้องการระบุขอบเขตของ OpenID

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

การลงนามในใบสมัครของคุณ

แอปพลิเคชันของคุณต้องลงนามด้วยใบรับรองที่ออกโดย Apple เพื่อให้ใช้งานบนอุปกรณ์ macOS และ iOS ได้แบบดั้งเดิมเพื่อจัดเก็บข้อมูลเข้าสู่ระบบผ่านคีย์เชน

ขั้นตอนถัดไป

เมื่อคุณดาวน์โหลดทรัพยากร Dependency ของโปรเจ็กต์และกำหนดค่าโปรเจ็กต์ Xcode แล้ว คุณจะเพิ่ม Google Sign-In ในแอป iOS ได้