Ghi chú phát hành SDK của tính năng Đăng nhập bằng Google dành cho iOS và macOS

9.0.0

  • Cho phép cung cấp nonce tuỳ chỉnh thông qua GSI cho AppAuth (#402, #476)
  • Khắc phục mã lỗi không hợp lệ trong GIDSignIn (#472)
  • Thêm tính năng hỗ trợ cho GTMAppAuth 5 trên macOS (#522)
  • Khắc phục các lỗi di chuyển Dữ liệu được bảo vệ (#533)
  • Nội bộ
    • Thêm AppAuthCore làm phần phụ thuộc rõ ràng (#470)
    • Cập nhật trình mô phỏng iPhone từ 14 lên 15 (#494)
    • Khắc phục kiểm thử tích hợp nút Swift (#497)
    • Cập nhật trình chạy thành macos-13 (#498)
    • Cập nhật scorecards.yml để sử dụng upload-artifact@v4.6.2 (#516)
    • Cập nhật các phần phụ thuộc AppAuth và GTMAppAuth (#517, #521)
    • Sửa các kiểm thử tích hợp Swift cho người dùng cũ (#518)
    • Cập nhật .gitignore để thêm .build và Package.resolved (#520)
    • Cập nhật GIDSignInTest để thiết lập và huỷ NSUserDefaults đúng cách (#527)

8.0.0

  • Bản phát hành công khai bổ sung tính năng hỗ trợ App Check của Firebase để thiết lập tính toàn vẹn của ứng dụng trong khi đăng nhập bằng Google
  • Cập nhật mức hỗ trợ tối thiểu cho iOS lên iOS 12 (#445)
  • Nội bộ
    • Cập nhật phần phụ thuộc AppCheckCore lên phiên bản 11.0 (#454)
    • Thêm giá trị trả về instancetype vào trình trợ giúp kiểm thử (#393)
    • Xoá tính năng nhập theo mô-đun GTMSessionFetcher (#403)
    • Tăng activesupport từ 5.2.5 lên 5.2.8.1 trong nhóm bundler (#429)
    • Xoá trình chạy macos-11 không được dùng nữa (#447)
    • Cập nhật việc sử dụng API lưu trữ không dùng nữa trong các bài kiểm thử (#449)

7.1.0-fac-beta-1.1.0

  • Bản phát hành thử nghiệm hỗ trợ mã thông báo Kiểm tra ứng dụng Firebase được dùng để thiết lập tính toàn vẹn của ứng dụng trong khi đăng nhập bằng Google
  • Thêm tính năng hỗ trợ tệp kê khai quyền riêng tư được phát hành trong v7.1.0
  • Nội bộ

7.1.0

  • Cập nhật lên Swift 5.0 trong pod GoogleSignInSwiftSupport (#317)
  • Các lần cập nhật tài liệu (#351, #372)
  • Thêm tệp kê khai về quyền riêng tư (#382)
  • Nội bộ
    • Sửa lỗi chính tả trong SFSafariViewController (#291)
    • Khắc phục việc sử dụng OCMock trong kiểm thử đơn vị (#298)
    • Sử dụng giao thức uỷ quyền mới từ GTMAppAuth 4.0.0 (#299)
    • Đảm bảo rằng completion không phải là giá trị rỗng trước khi gọi -[GIDSignIn restorePreviousSignIn:] (#301)
    • Xoá trình chạy macos-11 trong quy trình làm việc trên GitHub (#302)
    • Cập nhật thông tin tham chiếu về tên nút để các bài kiểm thử tự động hoá giao diện người dùng vượt qua (#308)

7.1.0-fac-beta-1.0.0

  • Bản phát hành thử nghiệm hỗ trợ mã thông báo Kiểm tra ứng dụng Firebase được dùng để thiết lập tính toàn vẹn của ứng dụng trong khi đăng nhập bằng Google
  • Nội bộ
    • Cập nhật phiên bản iOS tối thiểu của Podfile SignInSample (#355)
    • Cập nhật mục tiêu kiểm thử đơn vị AppCheckExample để truyền trong quá trình tích hợp liên tục (#356)

7.1.0-fac-eap-1.0.0

  • Bản phát hành Chương trình tiếp cận sớm (EAP) hỗ trợ mã thông báo Kiểm tra ứng dụng Firebase được dùng để thiết lập tính toàn vẹn của ứng dụng trong khi đăng nhập bằng Google
  • Nội bộ
    • Sửa lỗi chính tả trong SFSafariViewController (#291)
    • Xoá trình chạy macos-11 trong quy trình làm việc trên GitHub (#302)
    • Cập nhật thông tin tham chiếu về tên nút để các bài kiểm thử tự động hoá giao diện người dùng vượt qua (#308)
    • Đảm bảo rằng completion không phải là giá trị rỗng trước khi gọi -[GIDSignIn restorePreviousSignIn:] (#301)
    • Sử dụng giao thức uỷ quyền mới từ GTMAppAuth 4.0.0 (#299)

7.0.0

  • Giờ đây, bạn có thể cung cấp tất cả cấu hình thông qua tệp Info.plist. (#228)
    • Sử dụng các khoá sau theo cặp <key>KEY</key><string>VALUE</string> để định cấu hình SDK:
      • GIDClientID (bắt buộc)
      • GIDServerClientID (không bắt buộc)
      • GIDHostedDomain (không bắt buộc)
      • GIDOpenIDRealm (không bắt buộc)
  • Hỗ trợ Swift Concurrency. (#187)
  • Cải thiện giao diện API (#249, #228, #187)
    • GIDSignIn
      • Thuộc tính configuration mới.
      • Xoá các đối số Configuration: khỏi phương thức signIn:.
      • Xoá addScopes: và thêm vào GIDGoogleUser.
      • Đổi tên các đối số callback: thành completion: cho các phương thức không đồng bộ lấy các khối.
    • GIDGoogleUser
      • Thuộc tính configuration mới.
      • Phương thức addScopes: mới được di chuyển từ GIDSignIn.
      • Đã xoá thuộc tính authentication và thay thế bằng:
        • Thuộc tính accessToken mới.
        • Thuộc tính refreshToken mới.
        • Thuộc tính idToken mới.
        • Thuộc tính fetcherAuthorizer mới.
        • Phương thức refreshTokensIfNeededWithCompletion: mới.
    • Lớp GIDToken mới để biểu thị mã truy cập, mã làm mới và mã nhận dạng trong GIDGoogleUser.
    • Lớp GIDSignInResult mới để biểu thị kết quả của một quy trình signIn hoặc addScopes thành công.
    • Đã xoá các định nghĩa về loại khối GIDSignInCallback, GIDDisconnectCallbackGIDAuthenticationAction.

6.2.4

  • Cập nhật phần phụ thuộc GTMSessionFetcher để cho phép các phiên bản 2.x. (#207)

6.2.3

  • Khắc phục vấn đề tải tài nguyên trong GoogleSignInSwift bằng CocoaPods use_frameworks! (#197)
  • Ngăn lỗi bản dựng cho GoogleSignInSwift trong một số trường hợp khi sử dụng Trình quản lý gói Swift. (#166)

6.2.2

  • Ngăn lỗi bản dựng cho GoogleSignInSwift khi sử dụng Trình quản lý gói Swift. (#157)
  • Ngăn lỗi bản dựng trên Xcode 12 trở xuống. (#158)

6.2.1

  • Sử dụng GoogleSignInSwiftSupport làm tên của CocoaPod hỗ trợ Swift. (#137)

6.2.0

  • Hỗ trợ macOS. (#104)
  • Thêm nút "Đăng nhập bằng Google" SwiftUI. (#103)
  • Thêm khả năng yêu cầu các phạm vi bổ sung tại thời điểm đăng nhập. (#30)
  • Khắc phục một số vấn đề. (#87, #106)

6.1.0

  • Ứng dụng mẫu Swift mới minh hoạ SwiftUI. (#63)
  • Hỗ trợ Mac Catalyst.
  • Cải tiến cách triển khai addScopes. (#68, #70)

6.0.2

  • Đảm bảo có thể dùng các lần nhập mô-đun khi được tạo dưới dạng thư viện. (#53)

6.0.1

  • Khắc phục lỗi không gọi được các lệnh gọi lại lồng nhau cho phương thức signIn và addScopes. (#29)

6.0.0

  • Tính năng Đăng nhập bằng Google cho iOS hiện là nguồn mở.
  • Hỗ trợ Trình quản lý gói Swift.
  • Hỗ trợ Trình mô phỏng trên máy Mac M1.
  • Các bản cập nhật về giao diện API
    • GIDSignIn
      • sharedInstance hiện là một thuộc tính lớp.
      • signIn hiện là signInWithConfiguration:presentingViewController:callback: và luôn yêu cầu các phạm vi hồ sơ cơ bản.
      • addScopes:presentingViewController:callback: là cách mới để thêm các phạm vi ngoài hồ sơ cơ bản cho một người dùng hiện đang đăng nhập.
      • restorePreviousSignIn đổi tên thành restorePreviousSignInWithCallback:
      • disconnect đổi tên thành disconnectWithCallback:
      • Giao thức GIDSignInDelegate đã bị xoá, thay vào đó là các khối GIDSignInCallbackGIDDisconnectCallback.
      • Tất cả các thuộc tính cấu hình quy trình đăng nhập đều đã được chuyển sang GIDConfiguration.
    • Lớp GIDConfiguration đã được thêm để biểu thị cấu hình cần thiết để đăng nhập người dùng.
    • GIDAuthentication
      • getTokensWithHandler: đổi tên thành doWithFreshTokens:
      • Typedef GIDAuthenticationHandler đã được đổi tên thành GIDAuthenticationAction.
      • refreshTokensWithHandler: đã bị xoá, hãy dùng doWithFreshTokens:.
    • GIDSignInButton không còn gọi đến GIDSignIn nội bộ và sẽ cần được kết nối với IBAction hoặc tương tự để bạn có thể gọi signInWithConfiguration:presentingViewController:callback: để bắt đầu quy trình đăng nhập.

5.0.2

  • Khắc phục lỗi gửi mã lỗi không chính xác đến signIn:didSignInForUser:withError: khi người dùng huỷ hộp thoại đồng ý của iOS trong quy trình đăng nhập.

5.0.1

  • Khắc phục vấn đề không thể bắt đầu đúng quy trình đăng nhập trên iOS 13.
  • Bản phân phối zip yêu cầu Xcode 11 trở lên.

5.0.0

  • Các thay đổi đối với GIDSignIn
    • uiDelegate đã được thay thế bằng presentingViewController.
    • hasAuthInKeychain đã được thay thế bằng hasPreviousSignIn.
    • signInSilently đã được thay thế bằng restorePreviousSignIn.
    • Xoá mã lỗi kGIDSignInErrorCodeNoSignInHandlersInstalled không dùng nữa.
  • Các thay đổi đối với GIDAuthentication
    • Đã xoá các phương thức getAccessTokenWithHandler:refreshAccessTokenWithHandler: (không dùng nữa).
  • Thay đổi đối với GIDGoogleUser
    • Xoá thuộc tính không dùng nữa accessibleScopes, thay vào đó hãy dùng grantedScopes.
  • Thêm các phần phụ thuộc vào AppAuth và GTMAppAuth.
  • Xoá phần phụ thuộc trên GoogleToolboxForMac.
  • Ngừng hỗ trợ iOS 7.

4.4.0

  • Xoá phần phụ thuộc vào GTM OAuth 2.

4.3.0

  • Hỗ trợ giải pháp Quản lý thiết bị di động dành cho doanh nghiệp của Google.

4.2.0

  • Thêm grantedScopes vào GIDGoogleUser, cho phép xác nhận những phạm vi đã được cấp sau khi đăng nhập thành công.
  • Không dùng accessibleScopes trong GIDGoogleUser nữa, hãy dùng grantedScopes.
  • Nội dung bản địa hoá GIDSignInButton cho hi (tiếng Hindi) và fr-CA (tiếng Pháp (Canada)).
  • Thêm phần phụ thuộc vào khung LocalAuthentication của hệ thống.

4.1.2

  • Thêm chế độ hỗ trợ pod try cho GoogleSignIn CocoaPod.

4.1.1

  • Khắc phục vấn đề không gọi được signInWillDispatch:error: của GIDSignInUIDelegate trên iOS 11. Xin lưu ý rằng không có signIn:presentViewController: hay signIn:dismissViewController: nào được gọi trên iOS 11 vì SFAuthenticationSession không được trình bày bởi trình kiểm soát chế độ xem của ứng dụng.

4.1.0

  • Sử dụng SFAuthenticationSession trên iOS 11.

4.0.2

  • Không còn phụ thuộc vào GoogleAppUtilities nữa.

4.0.1

  • Chuyển sang các phần phụ thuộc của pod nguồn mở.
  • Giao diện của nút đăng nhập không còn phụ thuộc vào các phạm vi được yêu cầu.

4.0.0

  • Pod GoogleSignIn hiện có dạng một khung tĩnh. Nhập bằng #import <GoogleSignIn/GoogleSignIn.h> trong Objective-C.
  • Thêm tính năng hỗ trợ mô-đun. Bạn cũng có thể sử dụng @import GoogleSignIn; trong Objective-C (nếu mô-đun được bật) và import GoogleSignIn trong Swift mà không cần sử dụng tiêu đề cầu nối.
  • Đối với người dùng bản phân phối zip độc lập, hiện có nhiều khung được cung cấp và tất cả đều cần được thêm vào một dự án. Việc phân tách này giúp tăng tính linh hoạt trong trường hợp có các phần phụ thuộc trùng lặp.
  • Xoá phương thức checkGoogleSignInAppInstalled không dùng nữa khỏi GIDSignIn.
  • Xoá các thuộc tính allowsSignInWithBrowserallowsSignInWithWebView khỏi GIDSignIn.
  • Không còn yêu cầu thêm mã nhận dạng gói làm lược đồ URL mà ứng dụng hỗ trợ.

3.0.0

  • Cung cấp các thuộc tính givenNamefamilyName trên GIDProfileData.
  • Cho phép đặt thuộc tính loginHint trên GIDSignIn để điền sẵn mã nhận dạng hoặc địa chỉ email của người dùng trong quy trình đăng nhập.
  • Đã xoá danh mục UIViewController(SignIn) cũng như thuộc tính delegate khỏi GIDSignInButton.
  • Yêu cầu uiDelegate phải được thiết lập đúng cách trên GIDSignIn và khung SafariServices phải được liên kết.
  • Xoá phần phụ thuộc vào StoreKit.
  • Cung cấp dịch vụ hỗ trợ mã bit.
  • Yêu cầu Xcode 7.0 trở lên do bitcode không tương thích với Xcode 6.

2.4.0

  • Cập nhật nút đăng nhập bằng biểu trưng mới của Google.
  • Hỗ trợ hạn chế về miền khi đăng nhập.
  • Cho phép làm mới mã nhận dạng.

2.3.2

  • Không còn yêu cầu Xcode 7.

2.3.1

  • Khắc phục sự cố trong imageURLWithDimension: của GIDProfileData.

2.3.0

  • Yêu cầu Xcode 7.0 trở lên.
  • Sử dụng SFSafariViewController để đăng nhập trên iOS 9. Bạn phải đặt uiDelegate để tính năng này hoạt động.
  • Tối ưu hoá việc tìm nạp hồ sơ người dùng.
  • Hỗ trợ GTMFetcherAuthorizationProtocol trong GIDAuthentication.

2.2.0

  • Tương thích với iOS 9 (bản thử nghiệm). Xin lưu ý rằng phiên bản Sign-In SDK này không bao gồm bitcode, vì vậy, bạn phải đặt ENABLE_BITCODE thành NO trong dự án của mình nếu sử dụng Xcode 7.
  • Thêm các giá trị nhận dạng mô tả cho các quy tắc ràng buộc Bố cục tự động của GIDSignInButton.
  • signInSilently không còn yêu cầu bạn đặt uiDelegate nữa.

2.1.0

  • Khắc phục các vấn đề về Bố cục tự động với GIDSignInButton.
  • Thêm API để làm mới mã truy cập trong GIDAuthentication.
  • Mô tả ngoại lệ tốt hơn cho clientID chưa được chỉ định trong GIDSignIn.
  • Các bản sửa lỗi nhỏ khác.

2.0.1

  • Sửa lỗi

2.0.0

  • Hỗ trợ đăng nhập thông qua UIWebView thay vì chuyển đổi ứng dụng sang trình duyệt, có thể định cấu hình bằng thuộc tính allowsSignInWithWebView mới.
  • Giờ đây, những ứng dụng đã tắt tính năng chuyển đổi ứng dụng sang trình duyệt thông qua allowsSignInWithBrowser và chế độ xem web trong ứng dụng thông qua các thuộc tính allowsSignInWithWebView có thể hiển thị một lời nhắc hướng dẫn người dùng tải ứng dụng Google xuống từ App Store.
  • Khắc phục vấn đề về kích thước nút đăng nhập khi bật chế độ bố cục tự động
  • Giờ đây, signInSilently sẽ gọi uỷ quyền với lỗi khi hasAuthInKeychainNO như trong tài liệu
  • Sửa các lỗi nhỏ khác

1.0.0

  • SDK mới tập trung vào hoạt động đăng nhập với API mới
  • Nút đăng nhập được hiển thị linh động với thương hiệu theo bối cảnh
  • Hỗ trợ hồ sơ cơ bản
  • Đã thêm thuộc tính allowsSignInWithBrowser