- 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
GIDSignIn
sharedInstance
is now a class property.signIn
is 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.restorePreviousSignIn
is nowrestorePreviousSignInWithCallback:
.disconnect
is nowdisconnectWithCallback:
.- The
GIDSignInDelegate
protocol has been removed in favor ofGIDSignInCallback
andGIDDisconnectCallback
blocks. - All sign-in flow configuration properties have been moved to
GIDConfiguration
.
- The
GIDConfiguration
class had been added to represent the configuration needed to # a user. GIDAuthentication
getTokensWithHandler:
is nowdoWithFreshTokens:
.- The
GIDAuthenticationHandler
typedef has been renamedGIDAuthenticationAction
. refreshTokensWithHandler:
has been removed, usedoWithFreshTokens:
instead.
GIDSignInButton
no longer makes calls toGIDSignIn
internally and will need to be wired to anIBAction
or 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 # flow cannot be correctly started on iOS 13.
- The zip distribution requires Xcode 11 or above.
- Changes to GIDSignIn
uiDelegate
has been replaced withpresentingViewController
.hasAuthInKeychain
has been replaced withhasPreviousSignIn
.signInSilently
has been replaced withrestorePreviousSignIn
.- Removed deprecated
kGIDSignInErrorCodeNoSignInHandlersInstalled
error code.
- Changes to GIDAuthentication
- Removed deprecated methods
getAccessTokenWithHandler:
andrefreshAccessTokenWithHandler:
.
- Removed deprecated methods
- Changes to GIDGoogleUser
- Removed deprecated property
accessibleScopes
, usegrantedScopes
instead.
- 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
grantedScopes
toGIDGoogleUser
, allowing confirmation of which scopes have been granted after a successful sign-in. - Deprecates
accessibleScopes
inGIDGoogleUser
, usegrantedScopes
instead. - Localizes
GIDSignInButton
for hi (Hindi) and fr-CA (French (Canada)). - Adds dependency to the system
LocalAuthentication
framework.
- Add
pod try
support 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 GoogleSignIn
in 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
checkGoogleSignInAppInstalled
fromGIDSignIn
. - Removes
allowsSignInWithBrowser
andallowsSignInWithWebView
properties fromGIDSignIn
. - No longer requires adding bundle ID as a URL scheme supported by the app.
- Provides
givenName
andfamilyName
properties onGIDProfileData
. - Allows setting the
loginHint
property onGIDSignIn
to prefill the user's ID or email address in the sign-in flow. - Removed the
UIViewController(SignIn)
category as well as thedelegate
property fromGIDSignInButton
. - Requires that
uiDelegate
has been set properly onGIDSignIn
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
GIDProfileData
'simageURLWithDimension:
.
- 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 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
allowsSignInWithWebView
property. - Now apps which have disabled the app switch to a browser via the
allowsSignInWithBrowser
and in-app web view viaallowsSignInWithWebView
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 whenhasAuthInKeychain
isNO
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