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

8.0.0

  • รุ่นที่เผยแพร่ทั่วไปที่เพิ่มการรองรับ Firebase App Check เพื่อสร้างความสมบูรณ์ของแอปพลิเคชันขณะลงชื่อเข้าใช้ด้วย Google
  • อัปเดตการรองรับ iOS ขั้นต่ำเป็น iOS 12 (#445)
  • ภายใน
    • อัปเดต AppCheckCore ที่ใช้ร่วมกันเป็น v11.0 (#454)
    • เพิ่มการคืนค่า instancetype ไปยังตัวช่วยทดสอบ (#393)
    • นําการนําเข้าแบบโมดูลของ GTMSessionFetcher ออก (#403)
    • เพิ่มการสนับสนุนที่ใช้งานอยู่จาก 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 (#317)
  • การอัปเดตเอกสารประกอบ (#351, #372)
  • เพิ่มไฟล์ Manifest ด้านความเป็นส่วนตัว (#382)
  • ภายใน
    • แก้ไขคำที่พิมพ์ผิดใน SFSafariViewController (#291)
    • แก้ไขการใช้งาน OCMock ในการทดสอบหน่วย (#298)
    • ใช้โปรโตคอล Delegate ใหม่จาก GTMAppAuth 4.0.0 (#299)
    • ตรวจสอบว่า completion ไม่ใช่ค่าว่างก่อนเรียกใช้ -[GIDSignIn restorePreviousSignIn:] (#301)
    • นำ Runner 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 เพื่อใช้ Firebase App Check
  • ภายใน
    • แก้ไขคำที่พิมพ์ผิดใน SFSafariViewController (#291)
    • นำตัวเรียกใช้ macos-11 ในเวิร์กโฟลว์ GitHub (#302) ออก
    • อัปเดตการอ้างอิงชื่อปุ่มเพื่อให้ผ่านการทดสอบการทำงานอัตโนมัติของ UI (#308)
    • ตรวจสอบว่า completion ไม่ใช่ค่าว่างก่อนเรียกใช้ -[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 (#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
  • การรองรับเครื่องจำลองใน M1 Mac
  • การอัปเดตแพลตฟอร์ม 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: ที่เลิกใช้งานแล้วออก
  • การเปลี่ยนแปลงของผู้ใช้ GIDGoogle
    • นำพร็อพเพอร์ตี้ 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 สำหรับ GoogleSignIn CocoaPod

4.1.1

  • แก้ไขปัญหาที่ระบบไม่เรียกใช้ signInWillDispatch:error: ของ GIDSignInUIDelegate ใน 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 ขึ้นไปเนื่องจากบิตโค้ดใช้ร่วมกับ 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 (เบต้า) โปรดทราบว่า Sign-In 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