- General release adding Firebase App Check support to establish your application's integrity while signing in with Google
- Update minimum iOS support to iOS 12 (#445)
- Internal
- Update AppCheckCore dependency to v11.0 (#454)
- Add instancetype return to test helper (#393)
- Remove GTMSessionFetcher modular import (#403)
- Bump activesupport from 5.2.5 to 5.2.8.1 in the bundler group (#429)
- Remove deprecated macos-11 runner (#447)
- Update deprecated archiving API usage in tests (#449)
- Beta release supporting Firebase App Check tokens used to establish your application's integrity while signing in with Google
- Adds privacy manifest support released in v7.1.0
- Internal
- Check integration test for presubmit instruction (#368)
- Test skip integration key (#374)
- Add Privacy Manifest to App Check Release Branch (#392)
- Add return type to init in GIDFakeFetcherService header
- Update to Swift 5.0 in
GoogleSignInSwiftSupport
pod (#317) - Documentation updates (#351, #372)
- Add Privacy Manifest (#382)
- Internal
- Fix typo in
SFSafariViewController
(#291) - Fix
OCMock
usage in unit test (#298) - Use new delegate protocol from GTMAppAuth 4.0.0 (#299)
- Ensure that
completion
is not nil before calling-[GIDSignIn restorePreviousSignIn:]
(#301) - Removes
macos-11
runner in GitHub workflows (#302) - Updates button name reference so UI automation tests pass (#308)
- Fix typo in
- Beta release supporting Firebase App Check tokens used to establish your application's integrity while signing in with Google
- Internal
- Early Access Program (EAP) release supporting Firebase App Check tokens used
to establish your application's integrity while signing in with Google
- Use
-[GIDSignIn configureWithCompletion:]
to configure GSI to use Firebase App Check as early as possible in your app to minimize latency. - Use
-[GIDSignIn configureDebugProviderWithAPIKey:completion:]
in debug builds or continuous integration environments. - New sample app showing example of configuring GSI to use Firebase App Check.
- Use
- Internal
- Fix typo in
SFSafariViewController
(#291) - Removes
macos-11
runner in GitHub workflows (#302) - Updates button name reference so UI automation tests pass (#308)
- Ensure that
completion
is not nil before calling-[GIDSignIn restorePreviousSignIn:]
(#301) - Use new delegate protocol from GTMAppAuth 4.0.0 (#299)
- Fix typo in
- All configuration can now be provided via your
Info.plist
file. (#228)- Use the following keys in
<key>KEY</key><string>VALUE</string>
pairs to configure the SDK:GIDClientID
(required)GIDServerClientID
(optional)GIDHostedDomain
(optional)GIDOpenIDRealm
(optional)
- Use the following keys in
- Support for Swift Concurrency. (#187)
- API surface improvements (#249, #228, #187)
GIDSignIn
- New
configuration
property. - Removed
Configuration:
arguments fromsignIn:
methods. - Removed
addScopes:
and added it toGIDGoogleUser
. - Renamed
callback:
arguments tocompletion:
for asynchronous methods taking blocks.
- New
GIDGoogleUser
- New
configuration
property. - New
addScopes:
method moved fromGIDSignIn
. - Removed
authentication
property and replaced it with:- New
accessToken
property. - New
refreshToken
property. - New
idToken
property. - New
fetcherAuthorizer
property. - New
refreshTokensIfNeededWithCompletion:
method.
- New
- New
- New
GIDToken
class to represent access, refresh, and ID tokens inGIDGoogleUser
. - New
GIDSignInResult
class to represent the result of a successful signIn or addScopes flow. - Removed
GIDSignInCallback
,GIDDisconnectCallback
, andGIDAuthenticationAction
block type definitions.
- Updated the GTMSessionFetcher dependency to allow 2.x versions. (#207)
- Fix resource loading in GoogleSignInSwift with CocoaPods use_frameworks! (#197)
- Prevent build errors for GoogleSignInSwift in certain scenarios when using Swift Package Manager. (#166)
- Prevent build errors for GoogleSignInSwift when using Swift Package Manager. (#157)
- Prevent a build error on Xcode 12 and earlier. (#158)
- Use
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. (#63)
- Support for Mac Catalyst.
- Improvements to the
addScopes
implementation. (#68, #70)
- 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
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 sign in 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 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 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