ก่อนที่จะเริ่มผสานรวมแอป iOS หรือ macOS กับคอมโพเนนต์ Google Sign-In คุณต้องดาวน์โหลดทรัพยากร Dependency และกำหนดค่าโปรเจ็กต์ Xcode ก่อน ขั้นตอนในหน้านี้ จะช่วยคุณได้ ขั้นตอนถัดไปคือวิธีผสานรวม ฟีเจอร์ Google Sign-In ในแอปของคุณ
ก่อนเริ่มต้น
ติดตั้ง Xcode เวอร์ชันปัจจุ��ัน
ติดตั้งทรัพยากร Dependency ของ Google Sign-In ในโปรเจ็กต์
CocoaPods
หากยังไม่ได้ติดตั้ง CocoaPods ให้ทำตามขั้นตอนในคู่มือเริ่มต้นใช้งานสำหรับ CocoaPods
เปิดหน้าต่างเทอร์มินัลและไปที่ตำแหน่งโปรเจ็กต์ Xcode ของแอป
หากคุณยังไม่ได้สร้าง Podfile สำหรับแอปพลิเคชัน ให้สร้างขึ้นใหม่เดี๋ยวนี้
pod init
เปิด Podfile ที่สร้างขึ้นสำหรับแอปพลิเคชันแล้วเพิ่มข้อมูลต่อไปนี้
pod 'GoogleSignIn'
หากคุณใช้ SwiftUI ให้เพิ่มส่วนขยายพ็อดสำหรับปุ่ม "ลงชื่อเข้าใช้ด้วย Google" ด้วย ดังนี้
pod 'GoogleSignInSwiftSupport'
บันทึกไฟล์และเรียกใช้:
pod install
เปิดไฟล์
.xcworkspace
workspace ที่สร้างขึ้นสำหรับแอปพลิเคชันของคุณใน Xcode ใช้ไฟล์นี้สำหรับการพัฒนาแอปพลิเคชันในอนาคตทั้งหมด (โปรดทราบว่าไฟล์นี้ต่างจากไฟล์โปรเจ็กต์.xcodeproj
ที่รวมอยู่ ซึ่งจะส่งผลให้เกิดข้อผิดพลาดการสร้างเมื่อเปิดขึ้น)คุณอาจดูตัวอย่างจาก Podfile ของแอป Objective-C ตัวอย่าง
ผู้จัดการแพ็กเกจของ Swift
เปิดโปรเจ็กต์ใน Xcode
เพิ่มทรัพยากร Dependency ของ Google Sign-In ลงในแอปของคุณ (เอกสารประกอบเกี่ยวกับ Xcode)
ที่เก็บ https://github.com/google/GoogleSignIn-iOS
เวอร์ชัน 7.0.0 ผลิตภัณฑ์ที่เป็นแพ็กเกจ GoogleSignIn หากคุณใช้ SwiftUI ให้เพิ่มผลิตภัณฑ์แพ็กเกจส่วนขยายต่อไปนี้สำหรับปุ่ม "ลงชื่อเข้าใช้ด้วย Google" ด้วย
ผลิตภัณฑ์ที่เป็นแพ็กเกจ GoogleSignInSwift
รับรหัสไคลเอ็นต์ OAuth
แอปของคุณต้องใช้รหัสไคลเอ็นต์ OAuth เพื่อระบุตัวตนกับแบ็กเอนด์การตรวจสอบสิทธิ์ของ Google สำหรับแอป iOS และ macOS คุณต้องกำหนดค่าประเภทแอปพลิเคชันรหัสไคลเอ็นต์ OAuth เป็น iOS
หากคุณย��������่�����้��ร้าง�����ัสไคลเอ็นต์ OAuth โปรดคลิกปุ่มด้านล่างเพื่อสร้าง
หลังจากสร้างรหัสไคลเอ็นต์ OAuth แล้ว ให้สังเกตสตริงรหัสไคลเอ็นต์ซึ่งคุณจะต้องกำหนดค่า Google Sign-In ในแอป คุณจะเลือกดาวน์โหลดไฟล์การกำหนดค่าซึ่งมีรหัสไคลเอ็นต์และข้อมูลการกำหนดค่าอื่นๆ เพื่อใช้อ้างอิงในอนาคตได้ (ไม่บังคับ)
หากสร้างรหัสไคลเอ็นต์ OAuth ไว้แล้ว คุณจะค้นหาข้อมูล OAuth ที่มีอยู่ได้โดยคลิกปุ่มด้านล่าง
รับรหัสไคลเอ็นต์ OAuth ที่มีอยู่
รับรหัสไคลเอ็นต์ของเซิร์ฟเวอร์ OAuth
แอปส่วนใหญ่จะต้องส่งข้อมูลประจำตัวของผู้ใช้ที่ลงชื่อเข้าใช้ไปยังบริการแบ็กเอนด์บางประเภท ในการส่งข้อมูลประจำตัวของผู้ใช้ที่ลงชื่อเข้าใช้ด้วย Google ไปยังแบ็กเอนด์อย่างปลอดภัย ให้ใช้โทเค็นรหัสตามที่อธิบายไว้ในตรวจสอบสิทธิ์กับเซิร์ฟเวอร์แบ็กเอนด์ การเรียกโทเค็นรหัสผู้ใช้จะต้องมีรหัสไคลเอ็นต์ที่ 2 ซึ่งก็คือรหัสไคลเอ็นต์ของเซิร์ฟเวอร์ ซึ่งแสดงถึงแบ็กเอนด์ของคุณ
วิธีสร้างรหัสไคลเอ็นต์ของเซิร์ฟเวอร์
เปิดโปรเจ็กต์ใน Cloud Console
สร้างรหัสไคลเอ็นต์ 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 ได้