Notas de la versión del SDK de Acceso con Google para iOS y macOS

9.1.0

  • Permite solicitar claims (actualmente, solo auth_time) a través de Métodos de acceso (#550, #552, #553, #569)
  • Actualiza los métodos addScopes: en GIDSignIn para incluir el claims solicitado anteriormente (#557).
  • Interna
    • Asigna a keychainStore lo antes posible en el inicializador (#540).
    • Se agregó compatibilidad con Swift 6 (#543, #544, #546).
    • Actualiza los flujos de trabajo de GitHub Actions (#545, #570).
    • Actualiza la app de ejemplo de DaysUntilBirthday para admitir el reclamo de auth_time (#555)
    • Se cambió el nombre de tokenClaims a claims en todo el código (#568).

9.0.0

  • Se permite proporcionar un nonce personalizado a través de la GSI para AppAuth (#402, #476).
  • Se corrigió el código de error no válido en GIDSignIn (#472).
  • Se agregó compatibilidad con GTMAppAuth 5 en macOS (#522).
  • Se corrigieron errores de migración de Datos protegidos (#533).
  • Interna
    • Se agregó AppAuthCore como dependencia explícita (#470).
    • Se actualizó el simulador de iPhone de 14 a 15 (#494).
    • Se corrigió la prueba de integración del botón de corrección rápida (#497).
    • Actualiza el ejecutor a macos-13 (#498)
    • Actualiza scorecards.yml para usar upload-artifact@v4.6.2 (#516)
    • Se actualizaron las dependencias de AppAuth y GTMAppAuth (#517, #521).
    • Se corrigieron las pruebas de integración de Swift para un usuario recurrente (#518).
    • Actualiza .gitignore para incluir .build y Package.resolved (#520)
    • Se actualizó GIDSignInTest para configurar y desmontar NSUserDefaults correctamente (#527).

8.0.0

  • Lanzamiento general que agrega compatibilidad con la Verificación de aplicaciones de Firebase para establecer la integridad de tu aplicación cuando se accede con Google
  • Se actualizó la compatibilidad mínima con iOS a iOS 12 (#445).
  • Interna
    • Se actualizó la dependencia de AppCheckCore a la versión 11.0 (#454).
    • Se agregó la devolución de instancetype al asistente de prueba (#393).
    • Se quitó la importación modular de GTMSessionFetcher (#403).
    • Se actualizó activesupport de la versión 5.2.5 a la 5.2.8.1 en el grupo de bundler (#429).
    • Se quitó el ejecutor macos-11 obsoleto (#447).
    • Se actualizó el uso de la API de archivado obsoleta en las pruebas (#449).

7.1.0-fac-beta-1.1.0

  • Versión beta que admite tokens de Firebase App Check que se usan para establecer la integridad de tu aplicación cuando se accede con Google
  • Se agregó la compatibilidad con el manifiesto de privacidad lanzado en la v7.1.0
  • Interna

7.1.0

  • Se actualizó a Swift 5.0 en el pod de GoogleSignInSwiftSupport (#317).
  • Actualizaciones de documentación (#351, #372)
  • Agrega el manifiesto de privacidad (#382).
  • Interna
    • Se corrigió un error de escritura en SFSafariViewController (#291).
    • Se corrigió el uso de OCMock en la prueba de unidades (#298).
    • Se usa el nuevo protocolo de delegado de GTMAppAuth 4.0.0 (#299).
    • Asegúrate de que completion no sea nulo antes de llamar a -[GIDSignIn restorePreviousSignIn:] (#301).
    • Se quita el ejecutor macos-11 en los flujos de trabajo de GitHub (#302).
    • Se actualizó la referencia del nombre del botón para que se aprueben las pruebas de automatización de la IU (#308).

7.1.0-fac-beta-1.0.0

  • Versión beta que admite tokens de Firebase App Check que se usan para establecer la integridad de tu aplicación cuando se accede con Google
  • Interna
    • Se actualizó la versión mínima de iOS del Podfile de SignInSample (#355).
    • Se actualizó el destino de la prueba de unidades de AppCheckExample para que se apruebe durante la integración continua (#356).

7.1.0-fac-eap-1.0.0

  • Versión del Programa de acceso anticipado (PAA) que admite tokens de Verificación de aplicaciones de Firebase que se usan para establecer la integridad de tu aplicación cuando se accede con Google
  • Interna
    • Se corrigió un error de escritura en SFSafariViewController (#291).
    • Se quita el ejecutor macos-11 en los flujos de trabajo de GitHub (#302).
    • Se actualizó la referencia del nombre del botón para que se aprueben las pruebas de automatización de la IU (#308).
    • Asegúrate de que completion no sea nulo antes de llamar a -[GIDSignIn restorePreviousSignIn:] (#301).
    • Usa el nuevo protocolo de delegado de GTMAppAuth 4.0.0 (#299).

7.0.0

  • Ahora toda la configuración se puede proporcionar a través de tu archivo Info.plist. (#228)
    • Usa las siguientes claves en pares <key>KEY</key><string>VALUE</string> para configurar el SDK:
      • GIDClientID (obligatorio)
      • GIDServerClientID (opcional)
      • GIDHostedDomain (opcional)
      • GIDOpenIDRealm (opcional)
  • Compatibilidad con Swift Concurrency (#187)
  • Mejoras en la superficie de la API (#249, #228, #187)
    • GIDSignIn
      • Nueva propiedad configuration
      • Se quitaron los argumentos Configuration: de los métodos signIn:.
      • Se quitó addScopes: y se agregó a GIDGoogleUser.
      • Se cambiaron los nombres de los argumentos de callback: a completion: para los métodos asíncronos que toman bloques.
    • GIDGoogleUser
      • Nueva propiedad configuration
      • Se trasladó el nuevo método addScopes: desde GIDSignIn.
      • Se quitó la propiedad authentication y se reemplazó por lo siguiente:
        • Nueva propiedad accessToken
        • Nueva propiedad refreshToken
        • Nueva propiedad idToken
        • Nueva propiedad fetcherAuthorizer
        • Nuevo método refreshTokensIfNeededWithCompletion:
    • Nueva clase GIDToken para representar tokens de acceso, actualización y de ID en GIDGoogleUser.
    • Nueva clase GIDSignInResult para representar el resultado de un flujo exitoso de signIn o addScopes.
    • Se quitaron las definiciones de los tipos de bloques GIDSignInCallback, GIDDisconnectCallback y GIDAuthenticationAction.

6.2.4

  • Se actualizó la dependencia de GTMSessionFetcher para permitir versiones 2.x. (#207)

6.2.3

  • Se corrigió la carga de recursos en GoogleSignInSwift con CocoaPods use_frameworks. (#197)
  • Se evitan errores de compilación para GoogleSignInSwift en ciertas situaciones cuando se usa Swift Package Manager. (#166)

6.2.2

  • Se evitaron errores de compilación para GoogleSignInSwift cuando se usa Swift Package Manager. (#157)
  • Evita un error de compilación en Xcode 12 y versiones anteriores. (#158)

6.2.1

  • Usa GoogleSignInSwiftSupport como el nombre del CocoaPod de compatibilidad con Swift. (#137)

6.2.0

  • Se agregó compatibilidad con macOS. (#104)
  • Se agregó un botón de SwiftUI "Acceder con Google". (#103)
  • Se agregó la capacidad de solicitar permisos adicionales en el momento del acceso. (#30)
  • Se corrigieron varios problemas. (#87, #106)

6.1.0

  • Nueva app de ejemplo de Swift que demuestra SwiftUI. (#63)
  • Se agregó compatibilidad con Mac Catalyst.
  • Se realizaron mejoras en la implementación de addScopes. (#68, #70)

6.0.2

  • Asegúrate de que las importaciones de módulos se puedan usar cuando se compilen como una biblioteca. (#53)

6.0.1

  • Se corrigió el problema por el que no se llamaba a las devoluciones de llamada anidadas para los métodos signIn y addScopes. (#29)

6.0.0

  • El Acceso con Google para iOS ahora es de código abierto.
  • Se agregó compatibilidad con Swift Package Manager.
  • Se agregó compatibilidad con el simulador en Macs con M1.
  • Actualizaciones de la superficie de la API
    • GIDSignIn
      • sharedInstance ahora es una propiedad de clase.
      • signIn ahora es signInWithConfiguration:presentingViewController:callback: y siempre solicita los permisos de perfil básicos.
      • addScopes:presentingViewController:callback: es la nueva forma de agregar permisos más allá del perfil básico a un usuario que ya accedió.
      • restorePreviousSignIn ahora es restorePreviousSignInWithCallback:
      • disconnect ahora es disconnectWithCallback:
      • Se quitó el protocolo GIDSignInDelegate y se reemplazó por los bloques GIDSignInCallback y GIDDisconnectCallback.
      • Todas las propiedades de configuración del flujo de acceso se movieron a GIDConfiguration.
    • Se agregó la clase GIDConfiguration para representar la configuración necesaria para acceder como usuario.
    • GIDAuthentication
      • getTokensWithHandler: ahora es doWithFreshTokens:
      • Se cambió el nombre del typedef GIDAuthenticationHandler a GIDAuthenticationAction.
      • Se quitó refreshTokensWithHandler:. En su lugar, usa doWithFreshTokens:.
    • GIDSignInButton ya no realiza llamadas a GIDSignIn de forma interna y deberá conectarse a un IBAction o similar para que puedas llamar a signInWithConfiguration:presentingViewController:callback: y, así, iniciar un flujo de acceso.

5.0.2

  • Se corrigió el código de error incorrecto que se enviaba a signIn:didSignInForUser:withError: cuando el usuario cancelaba el diálogo de consentimiento de iOS durante el flujo de acceso.

5.0.1

  • Se corrigió un problema por el que no se podía iniciar correctamente el flujo de acceso en iOS 13.
  • La distribución zip requiere Xcode 11 o una versión posterior.

5.0.0

  • Cambios en GIDSignIn
    • uiDelegate se reemplazó por presentingViewController.
    • hasAuthInKeychain se reemplazó por hasPreviousSignIn.
    • signInSilently se reemplazó por restorePreviousSignIn.
    • Se quitó el código de error kGIDSignInErrorCodeNoSignInHandlersInstalled obsoleto.
  • Cambios en GIDAuthentication
    • Se quitaron los métodos obsoletos getAccessTokenWithHandler: y refreshAccessTokenWithHandler:.
  • Cambios en GIDGoogleUser
    • Se quitó la propiedad accessibleScopes obsoleta. En su lugar, usa grantedScopes.
  • Agrega dependencias en AppAuth y GTMAppAuth.
  • Se quita la dependencia de GoogleToolboxForMac.
  • Se dejó de admitir iOS 7.

4.4.0

  • Se quita la dependencia de la autorización de OAuth 2 de GTM.

4.3.0

  • Es compatible con la administración de movilidad empresarial de Google.

4.2.0

  • Agrega grantedScopes a GIDGoogleUser, lo que permite confirmar qué permisos se otorgaron después de un acceso exitoso.
  • Se dejó de usar accessibleScopes en GIDGoogleUser. En su lugar, usa grantedScopes.
  • Localiza GIDSignInButton para hi (hindi) y fr-CA (francés canadiense).
  • Agrega una dependencia al framework LocalAuthentication del sistema.

4.1.2

  • Se agregó compatibilidad con pod try para el CocoaPod de GoogleSignIn.

4.1.1

  • Se corrigió un problema por el que no se llamaba a signInWillDispatch:error: de GIDSignInUIDelegate en iOS 11. Ten en cuenta que no se debe llamar a signIn:presentViewController: ni a signIn:dismissViewController: en iOS 11, ya que el controlador de vistas de la app no presenta SFAuthenticationSession.

4.1.0

  • Usa SFAuthenticationSession en iOS 11.

4.0.2

  • Ya no depende de GoogleAppUtilities.

4.0.1

  • Se cambia a las dependencias de Pod de código abierto.
  • La apariencia del botón de acceso ya no depende de los permisos solicitados.

4.0.0

  • El pod de GoogleSignIn ahora adopta la forma de un framework estático. Importa con #import <GoogleSignIn/GoogleSignIn.h> en Objective-C.
  • Se agregó compatibilidad con módulos. También puedes usar @import GoogleSignIn; en Objective-C, si el módulo está habilitado, y import GoogleSignIn en Swift sin usar un encabezado de puente.
  • Para los usuarios de la distribución zip independiente, ahora se proporcionan varios frameworks, y todos deben agregarse a un proyecto. Esta descomposición permite una mayor flexibilidad en caso de dependencias duplicadas.
  • Se quitó el método checkGoogleSignInAppInstalled obsoleto de GIDSignIn.
  • Quita las propiedades allowsSignInWithBrowser y allowsSignInWithWebView de GIDSignIn.
  • Ya no es necesario agregar el ID del paquete como un esquema de URL compatible con la app.

3.0.0

  • Proporciona propiedades givenName y familyName en GIDProfileData.
  • Permite establecer la propiedad loginHint en GIDSignIn para completar previamente el ID o la dirección de correo electrónico del usuario en el flujo de acceso.
  • Se quitaron la categoría UIViewController(SignIn) y la propiedad delegate de GIDSignInButton.
  • Requiere que uiDelegate se haya configurado correctamente en GIDSignIn y que se haya vinculado el framework de SafariServices.
  • Se quita la dependencia de StoreKit.
  • Proporciona compatibilidad con bitcode.
  • Requiere Xcode 7.0 o una versión posterior debido a incompatibilidades de bitcode con Xcode 6.

2.4.0

  • Se actualizó el botón de acceso con el nuevo logotipo de Google.
  • Admite la restricción de dominio para el acceso.
  • Permite actualizar tokens de ID.

2.3.2

  • Ya no requiere Xcode 7.

2.3.1

  • Se corrigió una falla en el imageURLWithDimension: de GIDProfileData.

2.3.0

  • Requiere Xcode 7.0 o versiones posteriores.
  • Usa SFSafariViewController para acceder en iOS 9. uiDelegate debe estar configurado para que esto funcione.
  • Se optimizó la recuperación del perfil del usuario.
  • Admite GTMFetcherAuthorizationProtocol en GIDAuthentication.

2.2.0

  • Se agregó compatibilidad con iOS 9 (beta). Ten en cuenta que esta versión del SDK de Sign-In no incluye bitcode, por lo que debes establecer ENABLE_BITCODE en NO en tu proyecto si usas Xcode 7.
  • Agrega identificadores descriptivos para las restricciones de diseño automático de GIDSignInButton.
  • signInSilently ya no requiere que se establezca uiDelegate.

2.1.0

  • Se corrigieron problemas de diseño automático con GIDSignInButton.
  • Se agregó la API para actualizar el token de acceso en GIDAuthentication.
  • Se mejoró la descripción de la excepción para el clientID no asignado en GIDSignIn.
  • Se corrigieron otros errores menores.

2.0.1

  • Correcciones de errores

2.0.0

  • Se admite el acceso a través de UIWebView en lugar de cambiar de la app a un navegador, lo que se puede configurar con la nueva propiedad allowsSignInWithWebView.
  • Ahora, las apps que inhabilitaron el cambio de app a un navegador a través de las propiedades allowsSignInWithBrowser y la vista web integrada en la app a través de las propiedades allowsSignInWithWebView tienen la opción de mostrar un mensaje que le indica al usuario que descargue la app de Google desde App Store.
  • Se corrigió el problema de tamaño del botón de acceso cuando el diseño automático está habilitado.
  • Ahora signInSilently llama al delegado con un error cuando hasAuthInKeychain es NO, como se documentó.
  • Otras correcciones de errores menores

1.0.0

  • Nuevo SDK enfocado en el acceso con una API actualizada
  • Botón de acceso renderizado de forma dinámica con la marca contextual
  • Compatibilidad con perfiles básicos
  • Se agregó la propiedad allowsSignInWithBrowser