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

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).
  • Interno
    • 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 (nº 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).
  • Interno
    • 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 que ya no está disponible 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ó compatibilidad con el manifiesto de privacidad lanzado en la v7.1.0
  • Interno

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).
  • Interno
    • Se corrigió un error de escritura en SFSafariViewController (#291).
    • Se corrigió el uso de OCMock en la prueba de unidades (#298).
    • 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
  • Interno
    • 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 Firebase App Check utilizados para establecer la integridad de tu aplicación cuando se accede con Google
  • Interno
    • 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 callback: a completion: para los métodos asíncronos que toman bloques.
    • GIDGoogleUser
      • Nueva propiedad configuration
      • Se trasladó el nuevo método addScopes: de 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 bloque 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 use_frameworks! de CocoaPods. (#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 las 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 accedió a su cuenta.
      • 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.0 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 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 quitó la categoría UIViewController(SignIn), así como 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 optimiza 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 centrado 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