สำคัญ: ตั้งแต่วันที่
1 พฤษภาคม 2024 เป็นต้นไป Apple จะ
กำหนดให้ใช้ไฟล์ Manifest ด้านความเป็นส่วนตัวและลายเซ็นสำหรับแอปพลิเคชัน iOS ที่ใช้ SDK ที่ใช้กันโดยทั่วไป ซึ่งรวมถึง GoogleSignIn-iOS อัปเกรดเป็น GoogleSignIn-iOS v7.1.0 ขึ้นไปก่อนวันที่ 1 พฤษภาคม 2024 ทำตาม
คู่มือการอัปเกรด
บันทึกประจำรุ่นของ Google Sign-In iOS และ macOS SDK
จัดทุกอย่างให้เป็นระเบียบอยู่เสมอด้วยคอลเล็กชัน
บันทึกและจัดหมวดหมู่เนื้อหาตามค่ากำหนดของคุณ
9.1.0
- อนุญาตให้ขอ
claims (ปัจจุบันมีเพียง auth_time) ผ่านวิธีการลงชื่อเข้าใช้ (#550, #552, #553, #569)
- อัปเดตวิธีการ
addScopes: ใน GIDSignIn เพื่อรวม claims ที่ขอไว้ก่อนหน้านี้ (#557)
- ภายใน
- มอบหมายให้
keychainStore โดยเร็วที่สุดในโปรแกรมเริ่มต้น (#540)
- เพิ่มการรองรับ Swift 6 (#543, #544, #546)
- อัปเดตเวิร์กโฟลว์ GitHub Actions (#545, #570)
- อัปเดตแอปตัวอย่าง
DaysUntilBirthday เพื่อรองรับการอ้างสิทธิ์ auth_time (#555)
- เปลี่ยนชื่อ
tokenClaims เป็น claims ในโค้ดทั้งหมด (#568)
9.0.0
- อนุญาตให้ระบุ
nonce ที่กำหนดเองผ่าน GSI ไปยัง AppAuth (#402, #476)
- แก้ไขรหัสข้อผิดพลาดที่ไม่ถูกต้องใน
GIDSignIn (#472)
- เพิ่มการรองรับ GTMAppAuth 5 ใน macOS (#522)
- แก้ไขข้อบกพร่องในการย้ายข้อมูลที่ได้รับการปกป้องข้อมูล (#533)
- ภายใน
- เพิ่ม AppAuthCore เป็นการขึ้นต่อกันอย่างชัดเจน (#470)
- อัปเดตโปรแกรมจำลอง iPhone จาก 14 เป็น 15 (#494)
- แก้ไขการทดสอบการผสานรวมปุ่มด่วน (#497)
- อัปเดตโปรแกรมเรียกใช้เป็น macos-13 (#498)
- อัปเดต
scorecards.yml เพื่อใช้ upload-artifact@v4.6.2 (#516)
- อัปเดตการอ้างอิง AppAuth และ GTMAppAuth (#517, #521)
- แก้ไขการทดสอบการผสานรวม Swift สำหรับผู้ใช้ที่กลับมา (#518)
- อัปเดต
.gitignore ให้มี .build และ Package.resolved (#520)
- อัปเดต GIDSignInTest เพื่อตั้งค่าและล้างข้อมูล NSUserDefaults อย่างถูกต้อง (#527)
8.0.0
- การเปิดตัวทั่วไปที่เพิ่มการรองรับ App Check ของ Firebase เพื่อสร้างความสมบูรณ์ของแอปพลิเคชันขณะลงชื่อเข้าใช้ด้วย Google
- อัปเดตการรองรับ iOS ขั้นต่ำเป็น iOS 12 (#445)
- ภายใน
- อัปเดตการอ้างอิง AppCheckCore เป็น v11.0 (#454)
- เพิ่มการคืนค่า instancetype ไปยังโปรแกรมช่วยทดสอบ (#393)
- นำเข้าแบบแยกส่วนของ GTMSessionFetcher ออก (#403)
- อัปเดต activesupport จาก 5.2.5 เป็น 5.2.8.1 ในกลุ่ม Bundler (#429)
- นำโปรแกรมทำงาน macos-11 ที่เลิกใช้งานแล้วออก (#447)
- อัปเดตการใช้งาน API การเก็บถาวรที่เลิกใช้งานแล้วในการทดสอบ (#449)
7.1.0-fac-beta-1.1.0
- รุ่นเบต้าที่รองรับโทเค็น Firebase App Check ที่ใช้
เพื่อสร้างความสมบูรณ์ของแอปพลิเคชันขณะลงชื่อเข้าใช้ด้วย Google
- เพิ่มการรองรับไฟล์ Manifest ด้านความเป็นส่วนตัวที่เปิดตัวใน v7.1.0
- ภายใน
7.1.0
- อัปเดตเป็น Swift 5.0 ใน
GoogleSignInSwiftSupport pod (#317)
- การอัปเดตเอกสารประกอบ (#351, #372)
- เพิ่มไฟล์ Manifest ด้านความเป็นส่วนตัว (#382)
- ภายใน
- แก้ไขการพิมพ์ผิดใน
SFSafariViewController (#291)
- แก้ไขการใช้งาน
OCMock ในการทดสอบหน่วย (#298)
- ใช้โปรโตคอลผู้มอบสิทธิ์ใหม่จาก GTMAppAuth 4.0.0 (#299)
- ตรวจสอบว่า
completion ไม่ใช่ nil ก่อนเรียกใช้ -[GIDSignIn restorePreviousSignIn:] (#301)
- นำ
macos-11 runner ออกในเวิร์กโฟลว์ GitHub (#302)
- อัปเดตการอ้างอิงชื่อปุ่มอัปเดตเพื่อให้การทดสอบการทำงานอัตโนมัติของ UI ผ่าน (#308)
7.1.0-fac-beta-1.0.0
- รุ่นเบต้าที่รองรับโทเค็น Firebase App Check ที่ใช้
เพื่อสร้างความสมบูรณ์ของแอปพลิเคชันขณะลงชื่อเข้าใช้ด้วย Google
- ภายใน
- อัปเดตเวอร์ชัน iOS ขั้นต่ำของ Podfile SignInSample (#355)
- อัปเดตเป้าหมายการทดสอบหน่วย AppCheckExample ให้ผ่านระหว่างการผสานรวมอย่างต่อเนื่อง (#356)
7.1.0-fac-eap-1.0.0
- เปิดตัวโปรแกรมทดลองใช้ (EAP) ที่รองรับโทเค็น Firebase App Check ที่ใช้
เพื่อสร้างความสมบูรณ์ของแอปพลิเคชันขณะลงชื่อเข้าใช้ด้วย Google
- ภายใน
- แก้ไขการพิมพ์ผิดใน
SFSafariViewController (#291)
- นำ
macos-11 runner ออกในเวิร์กโฟลว์ GitHub (#302)
- อัปเดตการอ้างอิงชื่อปุ่มอัปเดตเพื่อให้การทดสอบการทำงานอัตโนมัติของ UI ผ่าน (#308)
- ตรวจสอบว่า
completion ไม่ใช่ nil ก่อนเรียกใช้
-[GIDSignIn restorePreviousSignIn:] (#301)
- ใช้โปรโตคอลการมอบสิทธิ์ใหม่
จาก GTMAppAuth 4.0.0 (#299)
7.0.0
- ตอนนี้คุณสามารถระบุการกำหนดค่าทั้งหมดผ่านไฟล์
Info.plist ได้แล้ว (#228)
- ใช้คีย์ต่อไปนี้ใน
<key>KEY</key><string>VALUE</string>คู่เพื่อกำหนดค่า SDK
GIDClientID (ต้องระบุ)
GIDServerClientID (ไม่บังคับ)
GIDHostedDomain (ไม่บังคับ)
GIDOpenIDRealm (ไม่บังคับ)
- รองรับ Swift Concurrency (#187)
- การปรับปรุงพื้นผิว API (#249, #228, #187)
GIDSignIn
- พร็อพเพอร์ตี้
configuration ใหม่
- นำอาร์กิวเมนต์
Configuration: ออกจากเมธอด signIn:
- นำ
addScopes: ออกและเพิ่มไปยัง GIDGoogleUser แล้ว
- เปลี่ยนชื่ออาร์กิวเมนต์
callback: เป็น completion: สำหรับเมธอดแบบไม่พร้อมกันที่ใช้บล็อก
GIDGoogleUser
- พร็อพเพอร์ตี้
configuration ใหม่
- ย้ายวิธีการ
addScopes: ใหม่จาก GIDSignIn
- นำพร็อพเพอร์ตี้
authentication ออกและแทนที่ด้วยพร็อพเพอร์ตี้ต่อไปนี้
- พร็อพเพอร์ตี้
accessToken ใหม่
- พร็อพเพอร์ตี้
refreshToken ใหม่
- พร็อพเพอร์ตี้
idToken ใหม่
- พร็อพเพอร์ตี้
fetcherAuthorizer ใหม่
refreshTokensIfNeededWithCompletion: วิธีใหม่
- คลาส
GIDToken ใหม่เพื่อแสดงโทเค็นเพื่อการเข้าถึง โทเค็นรีเฟรช และโทเค็นรหัสใน GIDGoogleUser
GIDSignInResult คลาสใหม่เพื่อแสดงผลลัพธ์ของโฟลว์การลงชื่อเข้าใช้หรือ addScopes ที่สำเร็จ
- นำคำจำกัดความประเภทการบล็อก
GIDSignInCallback, GIDDisconnectCallback และ GIDAuthenticationAction ออก
6.2.4
- อัปเดตทรัพยากร Dependency ของ GTMSessionFetcher เพื่ออนุญาตเวอร์ชัน 2.x (#207)
6.2.3
- แก้ไขการโหลดทรัพยากรใน GoogleSignInSwift ด้วย CocoaPods use_frameworks! (#197)
- ป้องกันข้อผิดพลาดในการบิลด์สำหรับ GoogleSignInSwift ในบางสถานการณ์เมื่อใช้ Swift Package Manager (#166)
6.2.2
- ป้องกันข้อผิดพลาดในการบิลด์สำหรับ GoogleSignInSwift เมื่อใช้ Swift Package Manager (#157)
- ป้องกันข้อผิดพลาดในการบิลด์ใน Xcode 12 และเวอร์ชันก่อนหน้า (#158)
6.2.1
- ใช้
GoogleSignInSwiftSupport เป็นชื่อ CocoaPod ของการรองรับ Swift (#137)
6.2.0
- รองรับ macOS (#104)
- เพิ่มปุ่ม "ลงชื่อเข้าใช้ด้วย Google" ของ SwiftUI (#103)
- เพิ่มความสามารถในการขอขอบเขตเพิ่มเติมในเวลาที่ลงชื่อเข้าใช้ (#30)
- แก้ไขปัญหาหลายรายการ (#87, #106)
6.1.0
- แอปตัวอย่าง Swift ใหม่ที่สาธิต SwiftUI
(#63)
- รองรับ Mac Catalyst
- การปรับปรุงการใช้งาน
addScopes
(#68
#70)
6.0.2
- ตรวจสอบว่าสามารถใช้การนำเข้าโมดูลได้เมื่อสร้างเป็นไลบรารี
(#53)
6.0.1
- แก้ไขการเรียกกลับที่ซ้อนกันซึ่งไม่ได้เรียกใช้เมธอด signIn และ addScopes
(#29)
6.0.0
- Google Sign-In สำหรับ iOS เปิดให้ใช้งานแบบโอเพนซอร์สแล้ว
- รองรับ Swift Package Manager
- รองรับเครื่องจำลองใน Mac ที่ใช้ชิป M1
- การอัปเดตแพลตฟอร์ม API
GIDSignIn
sharedInstance เป็นพร็อพเพอร์ตี้ของคลาสแล้ว
- ตอนนี้
signIn คือ signInWithConfiguration:presentingViewController:callback: และจะขอขอบเขตโปรไฟล์พื้นฐานเสมอ
addScopes:presentingViewController:callback: เป็นวิธีใหม่ในการเพิ่มขอบเขตนอกเหนือจากโปรไฟล์พื้นฐาน
ให้กับผู้ใช้ที่ลงชื่อเข้าใช้อยู่ในปัจจุบัน
restorePreviousSignIn เปลี่ยนชื่อเป็น restorePreviousSignInWithCallback: แล้ว
disconnect เปลี่ยนชื่อเป็น disconnectWithCallback: แล้ว
- เราได้นำโปรโตคอล
GIDSignInDelegate ออกเพื่อใช้บล็อก GIDSignInCallback และ
GIDDisconnectCallback แทน
- เราได้ย้ายพร็อพเพอร์ตี้การกำหนดค่าโฟลว์การลงชื่อเข้าใช้ทั้งหมดไปยัง
GIDConfiguration แล้ว
- มีการเพิ่มคลาส
GIDConfiguration เพื่อแสดงการกำหนดค่าที่จำเป็นในการลงชื่อเข้าใช้
ผู้ใช้
GIDAuthentication
getTokensWithHandler: เปลี่ยนชื่อเป็น doWithFreshTokens: แล้ว
- เปลี่ยนชื่อ typedef
GIDAuthenticationHandler เป็น GIDAuthenticationAction แล้ว
- เราได้นำ
refreshTokensWithHandler: ออกแล้ว โปรดใช้ doWithFreshTokens: แทน
GIDSignInButton จะไม่โทรหา GIDSignIn ภายในอีกต่อไป และจะต้องต่อสายกับ
IBAction หรืออุปกรณ์ที่คล้ายกันเพื่อให้คุณโทรหา
signInWithConfiguration:presentingViewController:callback: เพื่อเริ่มขั้นตอนการลงชื่อเข้าใช้
5.0.2
- แก้ไขการส่งรหัสข้อผิดพลาดที่ไม่ถูกต้องไปยัง
signIn:didSignInForUser:withError: เมื่อผู้ใช้
ยกเลิกกล่องโต้ตอบความยินยอมของ iOS ระหว่างโฟลว์การลงชื่อเข้าใช้
5.0.1
- แก้ไขปัญหาที่ขั้นตอนการลงชื่อเข้าใช้ไม่สามารถเริ่มต้นได้อย่างถูกต้องใน iOS 13
- การเผยแพร่แบบ ZIP ต้องใช้ Xcode 11 ขึ้นไป
5.0.0
- การเปลี่ยนแปลงใน GIDSignIn
uiDelegate ถูกแทนที่ด้วย presentingViewController แล้ว
hasAuthInKeychain ถูกแทนที่ด้วย hasPreviousSignIn แล้ว
signInSilently ถูกแทนที่ด้วย restorePreviousSignIn แล้ว
- นำรหัสข้อผิดพลาด
kGIDSignInErrorCodeNoSignInHandlersInstalled ที่เลิกใช้งานแล้วออก
- การเปลี่ยนแปลงใน GIDAuthentication
- นำเมธอด
getAccessTokenWithHandler: และ refreshAccessTokenWithHandler: ที่เลิกใช้งานแล้วออก
- การเปลี่ยนแปลงใน GIDGoogleUser
- นำพร็อพเพอร์ตี้
accessibleScopes ที่เลิกใช้งานแล้วออก ให้ใช้ grantedScopes แทน
- เพิ่มการอ้างอิงใน AppAuth และ GTMAppAuth
- นำการขึ้นต่อกันของ GoogleToolboxForMac ออก
- หยุดรองรับ iOS 7
4.4.0
- นำการขึ้นต่อกันของ GTM OAuth 2 ออก
4.3.0
- รองรับ Enterprise Mobile Management ของ Google
4.2.0
- เพิ่ม
grantedScopes ลงใน GIDGoogleUser เพื่อให้ยืนยันได้ว่าระบบได้ให้สิทธิ์ขอบเขตใด
บ้างหลังจากลงชื่อเข้าใช้สำเร็จ
- เลิกใช้งาน
accessibleScopes ใน GIDGoogleUser โปรดใช้ grantedScopes แทน
- แปล
GIDSignInButton สำหรับ hi (ฮินดี) และ fr-CA (ฝรั่งเศส (แคนาดา))
- เพิ่มทรัพยากร Dependency ไปยังเฟรมเวิร์ก
LocalAuthentication ของระบบ
4.1.2
- เพิ่ม
pod tryการรองรับ CocoaPod ของ GoogleSignIn
4.1.1
- แก้ไขปัญหาที่ไม่ได้เรียกใช้
GIDSignInUIDelegate signInWillDispatch:error: ใน iOS 11 โปรดทราบว่าเราตั้งใจที่จะไม่เรียกใช้ทั้ง
signIn:presentViewController: และ signIn:dismissViewController:
ใน iOS 11 เนื่องจากแอปไม่ได้แสดง SFAuthenticationSession
ในตัวควบคุมมุมมอง
4.1.0
- ใช้ SFAuthenticationSession ใน iOS 11
4.0.2
- ไม่ขึ้นอยู่กับ GoogleAppUtilities อีกต่อไป
4.0.1
- เปลี่ยนไปใช้การอ้างอิงพ็อดแบบโอเพนซอร์ส
- ลักษณะที่ปรากฏของปุ่มลงชื่อเข้าใช้จะไม่ขึ้นอยู่กับขอบเขตที่ขออีกต่อไป
4.0.0
- ตอนนี้พ็อด GoogleSignIn จะอยู่ในรูปแบบของเฟรมเวิร์กแบบคงที่ นำเข้าด้วย
#import <GoogleSignIn/GoogleSignIn.h> ใน Objective-C
- เพิ่มการรองรับโมดูล นอกจากนี้ คุณยังใช้
@import GoogleSignIn; ใน Objective-C ได้ด้วย
หากเปิดใช้โมดูล และใช้ import GoogleSignIn ใน Swift ได้โดยไม่ต้องใช้
ไฟล์ส่วนหัวของบริดจ์
- สำหรับผู้ใช้การจัดจำหน่ายแบบ ZIP แบบสแตนด์อโลน ตอนนี้เรามีเฟรมเวิร์กหลายรายการ
ให้ใช้งานแล้ว และคุณต้องเพิ่มเฟรมเวิร์กทั้งหมดลงในโปรเจ็กต์ การแยกย่อยนี้ช่วยให้มีความยืดหยุ่นมากขึ้นในกรณีที่มีการขึ้นต่อกันที่ซ้ำกัน
- นำเมธอด
checkGoogleSignInAppInstalled ที่เลิกใช้งานแล้วออกจาก GIDSignIn
- นำพร็อพเพอร์ตี้
allowsSignInWithBrowser และ allowsSignInWithWebView ออกจาก GIDSignIn
- ไม่ต้องเพิ่มรหัสชุดเป็นรูปแบบ URL ที่แอปนี้รองรับอีกต่อไป
3.0.0
- ระบุพร็อพเพอร์ตี้
givenName และ familyName ใน GIDProfileData
- อนุญาตให้ตั้งค่าพร็อพเพอร์ตี้
loginHint ใน GIDSignIn เพื่อป้อนข้อมูลรหัสหรืออีเมลของผู้ใช้ล่วงหน้าในขั้นตอนการลงชื่อเข้าใช้
- นำหมวดหมู่
UIViewController(SignIn) รวมถึงพร็อพเพอร์ตี้ delegate
ออกจาก GIDSignInButton
- ต้องตั้งค่า
uiDelegate อย่างถูกต้องใน GIDSignIn และลิงก์เฟรมเวิร์ก SafariServices
- นำการอ้างอิง StoreKit ออก
- รองรับ Bitcode
- ต้องใช้ Xcode 7.0 ขึ้นไปเนื่องจาก Bitcode ไม่เข้ากันกับ Xcode 6
2.4.0
- อัปเดตปุ่มลงชื่อเข้าใช้ด้วยโลโก้ Google ใหม่
- รองรับการจำกัดโดเมนสำหรับการลงชื่อเข้าใช้
- อนุญาตให้รีเฟรชโทเค็นรหัส
2.3.2
- จึงไม่ต้องใช้ Xcode 7 อีกต่อไป
2.3.1
- แก้ไขข้อขัดข้องใน
imageURLWithDimension: ของ GIDProfileData
2.3.0
- ต้องใช้ Xcode 7.0 ขึ้นไป
- ใช้ SFSafariViewController สำหรับการลงชื่อเข้าใช้ใน iOS 9 ต้องตั้งค่า
uiDelegate เพื่อให้ทำงานได้
- เพิ่มประสิทธิภาพการดึงข้อมูลโปรไฟล์ผู้ใช้
- รองรับ GTMFetcherAuthorizationProtocol ใน GIDAuthentication
2.2.0
- ใช้ได้กับ iOS 9 (เบต้า) โปรดทราบว่า SDK การลงชื่อเข้าใช้เวอร์ชันนี้ไม่มี Bitcode ดังนั้นคุณต้องตั้งค่า ENABLE_BITCODE เป็น NO ในโปรเจ็กต์หากใช้ Xcode 7
- เพิ่มตัวระบุเชิงอธิบายสำหรับข้อจํากัดการจัดวางอัตโนมัติของ GIDSignInButton
signInSilently ไม่ต้องตั้งค่าอีกต่อไปuiDelegate
2.1.0
- แก้ไขปัญหาการจัดวางอัตโนมัติด้วย GIDSignInButton
- เพิ่ม API เพื่อรีเฟรชโทเค็นเพื่อการเข้าถึงใน GIDAuthentication
- คำอธิบายข้อยกเว้นที่ดีขึ้นสำหรับ ClientID ที่ไม่ได้กำหนดใน GIDSignIn
- การแก้ไขข้อบกพร่องเล็กน้อยอื่นๆ
2.0.1
2.0.0
- รองรับการลงชื่อเข้าใช้ผ่าน UIWebView แทนการสลับแอปไปยังเบราว์เซอร์
ซึ่งกำหนดค่าได้ด้วยพร็อพเพอร์ตี้
allowsSignInWithWebView ใหม่
- ตอนนี้แอปที่ปิดใช้การสลับแอปไปยังเบราว์เซอร์ผ่านพร็อพเพอร์ตี้
allowsSignInWithBrowser และมุมมองเว็บในแอปผ่านพร็อพเพอร์ตี้ allowsSignInWithWebView
จะมีตัวเลือกในการแสดงข้อความแจ้งที่แนะนำให้ผู้ใช้ดาวน์โหลดแอป Google จาก App Store
- แก้ไขปัญหาการปรับขนาดปุ่มลงชื่อเข้าใช้เมื่อเปิดใช้การจัดวางอัตโนมัติ
- ตอนนี้
signInSilently จะโทรหาผู้รับมอบสิทธิ์พร้อมข้อผิดพลาดเมื่อ hasAuthInKeychain
เป็น NO ตามที่ระบุไว้ในเอกสาร
- การแก้ไขข้อบกพร่องเล็กน้อยอื่นๆ
1.0.0
- SDK ใหม่ที่เน้นการลงชื่อเข้าใช้พร้อม API ที่ปรับปรุงใหม่
- ปุ่มลงชื่อเข้าใช้ที่แสดงผลแบบไดนามิกพร้อมการสร้างแบรนด์ตามบริบท
- การรองรับโปรไฟล์พื้นฐาน
- เพิ่มพร็อพเพอร์ตี้ allowsSignInWithBrowser
เนื้อหาของหน้าเว็บนี้ได้รับอนุญาตภายใต้ใบอนุญาตที่ต้องระบุที่มาของครีเอทีฟคอมมอนส์ 4.0 และตัวอย่างโค้ดได้รับอนุญาตภายใต้ใบอนุญาต Apache 2.0 เว้นแต่จะระบุไว้เป็นอย่างอื่น โปรดดูรายละเอียดที่นโยบายเว็บไซต์ Google Developers Java เป็นเครื่องหมายการค้าจดทะเบียนของ Oracle และ/หรือบริษัทในเครือ
อัปเดตล่าสุด 2026-01-07 UTC
[null,null,["อัปเดตล่าสุด 2026-01-07 UTC"],[],[]]