บันทึกประจำรุ่นของ Google Sign-In iOS และ macOS SDK

9.0.0

  • อนุญาตให้ระบุ nonce ที่กำหนดเองผ่าน GSI ไปยัง AppAuth (#402, #476)
  • แก้ไขรหัสข้อผิดพลาดที่ไม่ถูกต้องใน GIDSignIn (#472)
  • เพิ่มการรองรับ GTMAppAuth 5 ใน macOS (#522)
  • แก้ไขข้อบกพร่องในการย้ายข้อมูลที่ปกป้องข้อมูล (#533)
  • ภายใน
    • เพิ่ม AppAuthCore เป็นทรัพยากร Dependency ที่ชัดเจน (#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โปรแกรมเรียกใช้ในเวิร์กโฟลว์ 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
    • ใช้ -[GIDSignIn configureWithCompletion:] เพื่อกําหนดค่า GSI ให้ใช้ Firebase App Check โดยเร็วที่สุดในแอป เพื่อลดเวลาในการตอบสนอง
    • ใช้ -[GIDSignIn configureDebugProviderWithAPIKey:completion:] ในการสร้างดีบักหรือสภาพแวดล้อมการรวมอย่างต่อเนื่อง
    • แอปตัวอย่างใหม่ แสดงตัวอย่างการกำหนดค่า GSI ให้ใช้ App Check ของ Firebase
  • ภายใน
    • แก้ไขการพิมพ์ผิดใน SFSafariViewController (#291)
    • นำmacos-11โปรแกรมเรียกใช้ในเวิร์กโฟลว์ 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 Mobility 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

  • แก้ไขปัญหาที่ไม่ได้เรียกใช้ GIDSignInUIDelegatesignInWillDispatch: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 ออก
  • รองรับบิตโค้ด
  • ต้องใช้ 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 การลงชื่อเข้าใช้เวอร์ชันนี้ไม่มีบิตโค้ด ดังนั้นคุณต้องตั้งค่า 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