- Allow for additional scopes to be requested at sign in (#2)
- Ensure that module imports can be used when built as a library. (#53)
- Fixes nested callbacks not being called for signIn and addScopes methods. (#29)
- Google Sign-In for iOS is now open source.
- Swift Package Manager support.
- Support for Simulator on M1 Macs.
- API surface updates
GIDSignInsharedInstanceis now a class property.signInis nowsignInWithConfiguration: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.restorePreviousSignInis nowrestorePreviousSignInWithCallback:.disconnectis nowdisconnectWithCallback:.- The
GIDSignInDelegateprotocol has been removed in favor ofGIDSignInCallbackandGIDDisconnectCallbackblocks. - All sign-in flow configuration properties have been moved to
GIDConfiguration.
- The
GIDConfigurationclass had been added to represent the configuration needed to sign in a user. GIDAuthenticationgetTokensWithHandler:is nowdoWithFreshTokens:.- The
GIDAuthenticationHandlertypedef has been renamedGIDAuthenticationAction. refreshTokensWithHandler:has been removed, usedoWithFreshTokens:instead.
GIDSignInButtonno longer makes calls toGIDSignIninternally and will need to be wired to anIBActionor similar in order for you to callsignInWithConfiguration: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
uiDelegatehas been replaced withpresentingViewController.hasAuthInKeychainhas been replaced withhasPreviousSignIn.signInSilentlyhas been replaced withrestorePreviousSignIn.- Removed deprecated
kGIDSignInErrorCodeNoSignInHandlersInstallederror code.
- Changes to GIDAuthentication
- Removed deprecated methods
getAccessTokenWithHandler:andrefreshAccessTokenWithHandler:.
- Removed deprecated methods
- Changes to GIDGoogleUser
- Removed deprecated property
accessibleScopes, usegrantedScopesinstead.
- 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.
- Adds
grantedScopestoGIDGoogleUser, allowing confirmation of which scopes have been granted after a successful sign-in. - Deprecates
accessibleScopesinGIDGoogleUser, usegrantedScopesinstead. - Localizes
GIDSignInButtonfor hi (Hindi) and fr-CA (French (Canada)). - Adds dependency to the system
LocalAuthenticationframework.
- Add
pod trysupport for the GoogleSignIn CocoaPod.
- Fixes an issue that
GIDSignInUIDelegate'ssignInWillDispatch:error:was not called on iOS 11. Please note that it is intended that neithersignIn:presentViewController:norsignIn:dismissViewController:is called on iOS 11 because SFAuthenticationSession is not presented by the app's view controller.
- 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, andimport GoogleSignInin Swift without using a bridge-header. - 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
checkGoogleSignInAppInstalledfromGIDSignIn. - Removes
allowsSignInWithBrowserandallowsSignInWithWebViewproperties fromGIDSignIn. - No longer requires adding bundle ID as a URL scheme supported by the app.
- Provides
givenNameandfamilyNameproperties onGIDProfileData. - Allows setting the
loginHintproperty onGIDSignInto prefill the user's ID or email address in the sign-in flow. - Removed the
UIViewController(SignIn)category as well as thedelegateproperty fromGIDSignInButton. - Requires that
uiDelegatehas been set properly onGIDSignInand 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
GIDProfileData'simageURLWithDimension:.
- Requires Xcode 7.0 or above.
- Uses SFSafariViewController for signing in on iOS 9.
uiDelegatemust 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.
signInSilentlyno longer requires settinguiDelegate.
- 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.
- Bug fixes
- Supports sign-in via UIWebView rather than app switching to a browser,
configurable with the new
allowsSignInWithWebViewproperty. - Now apps which have disabled the app switch to a browser via the
allowsSignInWithBrowserand in-app web view viaallowsSignInWithWebViewproperties 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
signInSilentlynow calls the delegate with error whenhasAuthInKeychainisNOas 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