คุณต้องดาวน์โหลด Dependency และกำหนดค่าโปรเจ็กต์ Xcode ก่อนจึงจะเริ่มผสานรวมแอป iOS หรือ macOS กับคอมโพเนนต์ Google Sign-In ได้ ขั้นตอนในหน้านี้จะช่วยคุณดำเนินการดังกล่าว จากนั้นขั้นตอนถัดไปจะอธิบายวิธีผสานรวมฟีเจอร์ Google Sign-In เข้ากับแอป
ก่อนเริ่มต้น
ติดตั้ง Xcode เวอร์ชันปัจจุบัน
ติดตั้งไลบรารีของ Google Sign-In ในโปรเจ็กต์
CocoaPods
หากยังไม่ได้ติดตั้ง CocoaPods ให้ทำตามขั้นตอนในคำแนะนำเริ่มต้นใช้งาน CocoaPods
เปิดหน้าต่างเทอร์มินัลและไปที่ตำแหน่งของโปรเจ็กต์ Xcode ของแอป
หากยังไม่ได้สร้าง Podfile สําหรับแอปพลิเคชัน ให้สร้างตอนนี้เลยโดยทําดังนี้
pod init
เปิด Podfile ที่สร้างขึ้นสำหรับแอปพลิเคชัน แล้วเพิ่มข้อมูลต่อไปนี้
pod 'GoogleSignIn'
หากคุณใช้ SwiftUI ให้เพิ่มส่วนขยายพ็อดสำหรับปุ่ม "ลงชื่อเข้าใช้ด้วย Google" ด้วย โดยทำดังนี้
pod 'GoogleSignInSwiftSupport'
บันทึกไฟล์และเรียกใช้:
pod install
เปิดไฟล์
.xcworkspace
workspace ที่สร้างขึ้นสําหรับแอปพลิเคชันใน Xcode ใช้ไฟล์นี้ในการพัฒนาทั้งหมดที่จะเกิดขึ้นในอนาคตสำหรับแอปพลิเคชัน (โปรดทราบว่าไฟล์นี้แตกต่างจากไฟล์.xcodeproj
project ที่รวมอยู่ด้วย ซึ่งจะทำให้เกิดข้อผิดพลาดในการสร้างเมื่อเปิด)คุณสามารถดูตัวอย่างได้จาก Podfile ของแอปตัวอย่าง Objective-C
Swift Package Manager
เปิดโปรเจ็กต์ใน Xcode
เพิ่มข้อกําหนดของ 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 ที่มีอยู่เดิมในคอนโซลระบบคลาวด์ เช่น
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>
ไม่บังคับ: กำหนดค่าการตรวจสอบสิทธิ์แบ็กเอนด์
หากต้องการรับโทเค็นระบุตัวตนของผู้ใช้สําหรับการตรวจสอบสิทธิ์แบ็กเอนด์ ให้ตั้งค่าคีย์ 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 ได้