Google Sign-In iOS and macOS SDK Release Notes
- Prevent build errors for GoogleSignInSwift when using Swift Package Manager. (#157)
- Prevent a build error on Xcode 12 and earlier. (#158)
GoogleSignInSwiftSupport as the name of the Swift support CocoaPod. (#137)
- Support for macOS. (#104)
- Added a SwiftUI "Sign in with Google" button. (#103)
- Added the ability to request additional scopes at sign-in time. (#30)
- Fixed several issues. (#87, #106)
- New Swift sample app demonstrating SwiftUI.
- Support for Mac Catalyst.
- Improvements to the
- Ensure that module imports can be used when built as a library.
- Fixes nested callbacks not being called for signIn and addScopes methods.
- Google Sign-In for iOS is now open source.
- Swift Package Manager support.
- Support for Simulator on M1 Macs.
- API surface updates
sharedInstance is now a class property.
signIn is now
signInWithConfiguration:presentingViewController:callback: and always
requests basic profile scopes.
addScopes:presentingViewController:callback: is the new way to add scopes beyond basic
profile to a currently signed-in user.
restorePreviousSignIn is now
disconnect is now
GIDSignInDelegate protocol has been removed in favor of
- All sign-in flow configuration properties have been moved to
GIDConfiguration class had been added to represent the configuration needed to sign in a
getTokensWithHandler: is now
GIDAuthenticationHandler typedef has been renamed
refreshTokensWithHandler: has been removed, use
GIDSignInButton no longer makes calls to
GIDSignIn internally and will need to be wired to
IBAction or similar in order for you to call
signInWithConfiguration:presentingViewController:callback: to initiate a sign-in flow.
- Fixes the wrong error code being sent to
signIn:didSignInForUser:withError: when the user
cancels iOS's consent dialog during the sign-in flow.
- Fixes an issue that the sign in flow cannot be correctly started on iOS 13.
- The zip distribution requires Xcode 11 or above.
- Changes to GIDSignIn
uiDelegate has been replaced with
hasAuthInKeychain has been replaced with
signInSilently has been replaced with
- Removed deprecated
kGIDSignInErrorCodeNoSignInHandlersInstalled error code.
- Changes to GIDAuthentication
- Removed deprecated methods
- Changes to GIDGoogleUser
- Removed deprecated property
- Adds dependencies on AppAuth and GTMAppAuth.
- Removes the dependency on GoogleToolboxForMac.
- Drops support for iOS 7.
- Removes the dependency on GTM OAuth 2.
- Supports Google's Enterprise Mobile Management.
GIDGoogleUser, allowing confirmation of which scopes
have been granted after a successful sign-in.
GIDSignInButton for hi (Hindi) and fr-CA (French (Canada)).
- Adds dependency to the system
pod try support for the GoogleSignIn CocoaPod.
- Fixes an issue that
not called on iOS 11. Please note that it is intended that neither
signIn:dismissViewController: is called
on iOS 11 because SFAuthenticationSession is not presented by the app's view
- Uses SFAuthenticationSession on iOS 11.
- No longer depends on GoogleAppUtilities.
- Switches to open source pod dependencies.
- Appearance of sign-in button no longer depends on requested scopes.
- GoogleSignIn pod now takes form of a static framework. Import with
#import <GoogleSignIn/GoogleSignIn.h> in Objective-C.
- Adds module support. You can also use
@import GoogleSignIn; in Objective-C,
if module is enabled, and
import GoogleSignIn in Swift without using a
- For users of the stand-alone zip distribution, multiple frameworks are now
provided and all need to be added to a project. This decomposition allows more
flexibility in case of duplicated dependencies.
- Removes deprecated method
- No longer requires adding bundle ID as a URL scheme supported by the app.
familyName properties on
- Allows setting the
loginHint property on
GIDSignIn to prefill the user's
ID or email address in the sign-in flow.
- Removed the
UIViewController(SignIn) category as well as the
- Requires that
uiDelegate has been set properly on
GIDSignIn and that
SafariServices framework has been linked.
- Removes the dependency on StoreKit.
- Provides bitcode support.
- Requires Xcode 7.0 or above due to bitcode incompatibilities with Xcode 6.
- Updates sign-in button with the new Google logo.
- Supports domain restriction for sign-in.
- Allows refreshing ID tokens.
- No longer requires Xcode 7.
- Fixes a crash in
- Requires Xcode 7.0 or above.
- Uses SFSafariViewController for signing in on iOS 9.
uiDelegate must be
set for this to work.
- Optimizes fetching user profile.
- Supports GTMFetcherAuthorizationProtocol in GIDAuthentication.
- Compatible with iOS 9 (beta). Note that this version of the Sign-In SDK does
not include bitcode, so you must set ENABLE_BITCODE to NO in your project if
you use Xcode 7.
- Adds descriptive identifiers for GIDSignInButton's Auto Layout constraints.
signInSilently no longer requires setting
- Fixes Auto Layout issues with GIDSignInButton.
- Adds API to refresh access token in GIDAuthentication.
- Better exception description for unassigned clientID in GIDSignIn.
- Other minor bug fixes.
- Supports sign-in via UIWebView rather than app switching to a browser,
configurable with the new
- Now apps which have disabled the app switch to a browser via the
allowsSignInWithBrowser and in-app web view via
properties have the option to display a prompt instructing the user to
download the Google app from the App Store.
- Fixes sign-in button sizing issue when auto-layout is enabled
signInSilently now calls the delegate with error when
NO as documented
- Other minor bug fixes
- New sign-in focused SDK with refreshed API
- Dynamically rendered sign-in button with contextual branding
- Basic profile support
- Added allowsSignInWithBrowser property
Except as otherwise noted, the content of this page is licensed under the Creative Commons Attribution 4.0 License, and code samples are licensed under the Apache 2.0 License. For details, see the Google Developers Site Policies. Java is a registered trademark of Oracle and/or its affiliates.
Last updated 2022-05-18 UTC.
"label":"Missing the information I need"
"label":"Too complicated / too many steps"
"label":"Out of date"
"label":"Samples / code issue"
"label":"Easy to understand"
"label":"Solved my problem"